Qlik Sense app containing OLEDB / ODBC connectors reloads successfully in the Data Load Editor. However, reload task of the same app in the QMC fails with error "ORA-01005: null password given; logon denied".
This happens in a shared persistence Qlik Sense environment where the app is created by the central node and reloaded by a RIM node.
When a data connection is created, the provided password is stored as an encrypted string in table DataConnections of Qlik Sense Repository database. This issue happens when a RIM node handling app reloads fail to decrypt password strings from the central Repository database, most likely because its certificate doesn't match the certificate used by the Central node
Review the Repository security trace logs to see if any errors similar to the following are reported:
ERROR RIMNODE1 Security.Repository.Repository.Domain.Util.EncryptionHelper 70 8951651c-f44a-4178-a262-400944b8651d domain\qvsrv Not possible to decrypt encrypted string in database; this is probably due to the secrets key on server certificate has been changed and the old database value hasn't; sending back empty result and leaving the value unchanged in database Checksum error at Qlik.Sense.Common.Security.Cryptography.CryptoKey.StripAndVerifyChecksum(Byte input)↵↓
If this is the case, consider one of the following solutions:
- Create the same ODBC / OLE DB connection in QlikView Desktop - most ideally installed in the same server with Qlik Sense. Copy connection string including XPassword from QlikView and replace the connection string of the ODBC / OLE DB connection in Qlik Sense QMC > Data connections.
- Redistribute certificate from Central node to RIM nodes that handle reloads as instructed in this article. This may requires reinstalling Qlik Sense services on the RIM nodes and re-registering the RIM nodes (see this article)