Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hi Everyone,
I'm getting the following error when attempting to connect to NetApp's Active IQ Unified Manager API:
It's just a simple GET request with Basic Authentication Schema, no query parameters, no query headers.
The issue is, I've tried the exact same connection using Postman and it works no problems.
I've tripled checked my authentication credentials, tried with and without the domain prefix, and I continue to get this error.
Any idea what could be causing it and how to resolve it? My suspicion is that the authentication schema is not supported by Qlik, but the API documentation definitely stated it is Basic Authentication.
I'm using Qlik Sense June 2017.
Hi Damien,
Thank you for your response. I've just tried a more recent version of Qlik Sense (Feb 2021) and still get the same issues.
Your message about the Base64-encoded hinted me in the right direction though. NetApp Active IQ uses basic authentication which requires a Base64 encoded value (not just the username and password in clear text).
My solution was to take my username and password and manual encode it into Base64 then add that to the Query Header and it worked.
Example (not the actual username and password obviously):
Username = username1
Password = password1
In basic HTTP authentication, a request contains a header field in the form of "Authorization: Basic <credentials>", where credentials is the Base64 encoding of ID and password joined by a single colon ":".
So I took "username1:password1" and put it into an online Base64 encoder to get: "dXNlcm5hbWUxOnBhc3N3b3JkMQ=="
Then in my REST data connection I entered a Query Header with Name "Authorization" and Value "Basic dXNlcm5hbWUxOnBhc3N3b3JkMQ==" and bingo bango it worked.
Hello @Databayo
Your version of Qlik Sense is quite old, did you try a more recent version of Qlik Sense to see if you have the same issue ?
I am unsure if that also applied to your version but the help site states:
Sends a Base64-encoded string with a user name and password for the client. Base64 is not a form of encryption. It is the same as sending the user name and password in clear text. |
Is your API expecting to receive the credentials encoded in base64 ?
Hi Damien,
Thank you for your response. I've just tried a more recent version of Qlik Sense (Feb 2021) and still get the same issues.
Your message about the Base64-encoded hinted me in the right direction though. NetApp Active IQ uses basic authentication which requires a Base64 encoded value (not just the username and password in clear text).
My solution was to take my username and password and manual encode it into Base64 then add that to the Query Header and it worked.
Example (not the actual username and password obviously):
Username = username1
Password = password1
In basic HTTP authentication, a request contains a header field in the form of "Authorization: Basic <credentials>", where credentials is the Base64 encoding of ID and password joined by a single colon ":".
So I took "username1:password1" and put it into an online Base64 encoder to get: "dXNlcm5hbWUxOnBhc3N3b3JkMQ=="
Then in my REST data connection I entered a Query Header with Name "Authorization" and Value "Basic dXNlcm5hbWUxOnBhc3N3b3JkMQ==" and bingo bango it worked.