Here you'll find the recordings of our Qlik Fix video series.
This video is part of the Qlik Fix Video series. If you found this video useful, check out the other Qlik Fix Videos.
This video will demonstrate how to use Qlik-CLI for SaaS to migrate Apps from your on-premises Qlik Sense environment to your Qlik Sense SaaS edition. Qlik-CLI makes it possible for scripting and automating App migration.
Here is a link to the Support Knowledge Base article which contains links to mentioned documentation.
How to use Qlik-CLI to Migrate Apps to Qlik Sense SaaS
Video Transcript:
Hi and welcome to Qlik Fix!
This video will demonstrate how to use Qlik-CLI for SaaS to migrate Apps from your on-premises Qlik Sense environment to your Qlik Sense SaaS edition.
Qlik-CLI makes it possible for scripting and automating App migration.
The tool may be installed and connected to you Qlik Sense SaaS tenant following the steps mentioned in this Community knowledge base article. (https://community.qlik.com/t5/Knowledge-Base/How-to-install-and-start-using-Qlik-CLI-for-SaaS-editions-of/ta-p/1796143)
Qlik-CLI can also be used to connecting to Qlik Sense on Windows via the QRS API.
As with SaaS Editions of Qlik Sense, the connection to Qlik Sense on Windows also requires a API Key for authentication. (qlik context get andresostizzo.us.qlikcloud.com)
The API key is essentially a JSON Web Token, or JWT, usually pronounced as jot.
So the first step is to have a new Virtual Proxy configured to accept JWT Authentication.
This will allow for qlik-cli to establish a trusted connection with the Qlik Sense server.
For detailed steps with enabling and testing JWT Authentication, take a look at this knowledge base article in community on how to set it up.
(https://community.qlik.com/t5/Knowledge-Base/Qlik-Sense-How-to-set-up-JWT-authentication/ta-p/1716226)
In this video's example however, we use the openssl commands found in this qlik.dev page to create a certificate and private key that are used for signing the JWT. (https://qlik.dev/tutorials/using-qlik-sense-on-windows-repository-api-qrs-with-qlik-cli#create-a-public--private-key-pair-for-signing-jwts)
Then, we create the JWT with the code sample found in this section, using Node. (https://qlik.dev/tutorials/using-qlik-sense-on-windows-repository-api-qrs-with-qlik-cli/#tokenjs-code-sample)
NodeJS can be downloaded from the Nodejs.org website. (https://nodejs.org/en/download/)
After installing it, the jsonwebtoken module needs to be installed with the following node package management (NPM) command. (npm install jsonwebtoken)
Now we can edit the provided Token.js javascript code for creating the token.
Note that the userid and userdirectory attributes names as well as the value specified for the audience (aud) attribute are all case sensitive, and need to match what is configured in the Virtual Proxy.
Also make sure to indicate an existing licensed user for the userid and userdirectory.
For jwtEncryptionKey, fill in the location for the private key file generated previously with openssl.
Now we can run this code with the following node command. (node token.js)
The token should be created and displayed.
Next, we need to create the context for the connection with the Qlik Sense server.
Run the following command with values for the context name, URL for the Virtual Proxy, server type as Windows, and the api-key which is the new JWT created. (qlik context create QSEoW --server https://192.168.254.243/jwt --server-type windows --api-key)
Note that if an IP or alias is used in the URL, it needs to be added to the Virtual Proxy's list of allowed hosts.
Now we switch to the newly created context with the context use command, and we are ready to run qlik qrs commands.
For example, the following command will retrieve a list of Apps and their IDs in JSON format. (qlik qrs app ls --insecure | jq -r '.[] | {"name":.name,"id":.id}')
Notice that the --insecure flag allows for the command to be run from outside the Qlik Sense server itself.
Also note that we are piping the output to a JSON processing tool called JQ.
JQ can be downloaded from the following web page. (https://stedolan.github.io/jq/)
Another example would be the need to retrieve App IDs for a specific Stream.
Adding the stream name object in the JQ command, and then piping it to the select-string command can help listing the App names and ids that were published to the specified stream.
(qlik qrs app ls --insecure | jq -r '.[] | {"name":.name,"id":.id,"stream":.stream.name}' | select-string "Monitoring apps" -context 2,0)
Next we can export one of these apps. Let's first set the variables for the App ID, the exported filepath, and new filename.
Now we can use these variables in the following command for exporting the App.
Note that the --skipdata flag exports the App without data.
This is beneficial with larger Apps since there is an upload size limit of 1GB when importing Apps to Qlik Sense SaaS editions.
More information on app sizing is available in the following article. (https://community.qlik.com/t5/Knowledge-Base/Qlik-Sense-Business-and-Enterprise-SaaS-App-Size-Storage-Size/ta-p/1710690)
We will also add the flag -v to enable verbose mode and display more result information.
We can see that a 200 OK is returned, and that the app is successfully exported.
The next step is to import the App into the Qlik Sense SaaS instance.
First we need to switch to the context used for your Qlik Sense SaaS tenant.
Review the values stored in our variables.
Then use the following command to import the App, and store its ID to the "SaaSApiID" powershell variable.
The App should now show in Cloud Hub under Explore.
Keep in mind that exported apps do not contain original private sheets and have the public sheets and stories set as private as seen here.
You may publish the sheets manually via Cloud Hub, or use qlik-cli as in the following example.
First review the imported App ID variable created previously.
With the following command obtain a list of sheets in the app.
Then, set all of them to public.
We can see the result in cloud hub and then notice the App is still found under the user's personal space.
The app may be assigned to a specific space, and many other tasks are available as well via Qlik-CLI.
Examples for Space assignment and owner changes can be found in the qlik.dev page shown here. (https://qlik.dev/tutorials/migrate-apps-from-qlik-sense-on-windows-to-qlik-sense-saas#place-the-app-in-a-shared-space)
If you’d like more information,
Take advantage of the expertise of peers, product experts, and technical support engineers
by asking a question in a Qlik Product Forum on Qlik Community.
Or search for answers using the new SearchUnify tool.
It searches across our Knowledge Base, Qlik Help, Qlik Community, Qlik YouTube channels and more, all from one place.
Also check out the Support Programs space.
Here you can learn directly from Qlik experts via a Support webinar, like Techspert Thursdays.
And don’t forget to subscribe to the Support Updates Blog.
Thanks for watching.
Nailed it!
Attached is a downloadable .mp4 video file for those who cannot view YouTube videos.
#QlikSupport
This video is part of the Qlik Fix Video series. If you found this video useful, check out the other Qlik Fix Videos.
This video demonstrates how to load an Excel file stored on SharePoint into Qlik Sense using the Qlik Office 365 SharePoint Connector found using Qlik Web Connectors.
Here is a link to more information in the Support Knowledge Base:
How to load an Excel file from sharePoint to Qlik Using Qlik Web Connectors
Here is more information on Qlik Web Connectors: Qlik Web Connectors
Attached is a downloadable .mp4 video file for those who cannot view YouTube videos.
#QlikSupport
This video is part of the Qlik Fix Video series. If you found this video useful, check out the other Qlik Fix Videos.
This video explain how to configure a Web Socket Ping Interval setting on Qlik Sense to help resolve Connection Lost errors in the hub or script editor.
Here is a link to more information in the Support Knowledge Base:
https://qliksupport.force.com/articles/000055708
Attached is a downloadable .mp4 video file for those who cannot view YouTube videos.
This video is part of the Qlik Fix Video series. If you found this video useful, check out the other Qlik Fix Videos.
This video will demonstrate how to install and configure Qlik-CLI for SaaS editions of Qlik Sense.
Here is a link to more information in the Support Knowledge Base:
How to install and start using Qlik-CLI for SaaS editions of Qlik Sense
Video Transcript:
Hi and welcome to Qlik Fix!
This video will demonstrate how to install and configure Qlik-CLI for SaaS editions of Qlik Sense.
Qlik-CLI gives you access to Qlik Sense public APIs via CLI, which is useful when writing automation scripts and performing repetitive tasks.
It can be downloaded directly from github and is available for Mac, Linux, or Windows.
When downloading for Windows, copy the executable to a local directory, and it just needs to be added to the Path System variable as shown here.
Now we can re-open PowerShell, and it is ready for further configuration. You can use the following command to confirm its location path.
Another option for installing Qlik-CLI on Windows is to use Chocolatey, which is a package management tool that allows for installing and upgrading qlik-cli via command line.
Chocolatey can be installed by following the PowerShell steps under its installation web page.
Keep in mind that if you use NodeJS, it is possible that it has already been installed as it can be included as a needed tool in the nodejs.
To install qlik-cli using Chocolatey, run this command that points to the NuGet web source location shown. Remember to specify the latest package version in the command.
Here we see the command succeeds, but if there are any issues finding package in the specified source, it can be downloaded directly from NuGet.org under this location.
Then add the local file location as source in the install command as shown here.
After the installation, it is useful to enable the Completion feature.
This allows for the user to use the TAB key and have commands, flags, and resources suggested or auto-completed.
To enable this in Powershell, first create a profile if no profile exists yet.
The following command can be run in order to check for an existing profile and to create a blank one if no profile exists.
Then open the profile file with this command using notepad, and add the following to the profile file, and restart PowerShell.
Note that this will enable completion only to Windows PowerShell via the current logged on user profile.
Also, if completion is needed with PowerShell ISE, perform the same steps using PowerShell ISE which creates a separate profile.
For enabling completion in Bash or zsh, follow the instructions under the qlik-cli Installation page.
Now we can create the qlik-cli context for the connection with the Qlik Sense tenant typing the command "qlik context init"
Here we type Qlik Sense tenant URL, and now we need to obtain an API Key in order to create the API connection trust.
The key is created via Cloud Hub so we have logged on with the user account that will be used to authenticate the API connection.
If the API Key section is not seen under Settings and Management, under the tenant's Management Console and under Settings, make sure that "Enable API keys" is set.
Also, the user creating the API Key must be given the Developer Role permissions, and must have a Professional License assigned
Next, go back to Cloud Hub, and under Settings and Management create a new API Key for authenticating the qlik-cli API connections.
This API Key is essentially a JWT token and its header and payload metadata can be visualized in jwt.io
Notice here the sub attribute indicates the user ID in SaaS used for the authentication.
Now, we can paste the key back in the PowerShell to create the new context for the connection to the SaaS tenant.
We can check on which contexts are available and the one being used with the "qlik context ls" command.
If needed, the context can be changed with the "context use" command.
Now we can test the connection with any API call, such as with the following command to list existing App names. (qlik item ls --resourceType app | select-string 'name":')
Then search for an App's and meta data information by App name with the following command. (qlik item ls --resourceType app --name "app name")
For more information on a particular command, use --help after each command parameter.
For example, when selecting parameters using completion, then typing --help will list the available commands and flags for the current command context.
Here's another example.
If you’d like more information,
Take advantage of the expertise of peers, product experts, and technical support engineers
by asking a question in a Qlik Product Forum on Qlik Community.
Or search for answers using the new SearchUnify tool.
It searches across our Knowledge Base, Qlik Help, Qlik Community, Qlik YouTube channels and more, all from one place.
Also check out the Support Programs space.
Here you can learn directly from Qlik experts via a Support webinar, like Techspert Thursdays.
And don’t forget to subscribe to the Support Updates Blog.
Thanks for watching.
Nailed it!
Attached is a downloadable .mp4 video file for those who cannot view YouTube videos.
#QlikSupport
This video is part of the Qlik Fix Video series. If you found this video useful, check out the other Qlik Fix Videos.
Qlik Sense Enterprise on Windows relies on database listeners to notify nodes when changes have occurred. It is possible for these connections to be silently closed in the environment, so this video will show how we can identify if a listener has been closed.
Here is a link to more information in the Support Knowledge Base:
How To Check For Missing Database Listeners in Qlik Sense on Windows
Video Transcript:
Hi and welcome to Qlik Fix!
Qlik Sense Enterprise on Windows relies on database listeners to notify nodes when changes have occurred.
It is possible for these connections to be silently closed in the environment, so this video will show how we can identify if a listener has been closed.
First, we want to make sure that all nodes are showing as “Online” in the QMC. Otherwise this will affect the result of the query we will run later in the video.
In this environment, there are currently four nodes including the central, and they all show as “Online” with all services running properly.
Now to run the query, we open PGadmin and connect to the QSR database.
Right-click on it and select the “Query Tool”
Next copy the SQL query from the Qlik Community knowledge base article on “How To Check For Missing Database Listeners...”, and paste it in PGAdmin's query editor.
After running the query the output will show the list of node IPs with an associated listener.
It will also show how many nodes you have in total and how many listeners are opened.
Normally there should be one listeners per node. However in this case, we can see that there are only three listeners for a total of four nodes.
This means one database listener is missing.
A quick fix is to restart the Qlik Sense Repository Service on the affected rim node.
However, for a more permanent fix, open the QlikSenseUtil.exe program under this location (C:\Program Files\Qlik\Sense\Repository\Util\QlikSenseUtil)
Then select “Connection String Editor” and then the Read button.
Next, add the parameter Keep Alive=30 at the end of these two connection string.
This will ensure that these database connections remain open by sending periodic keep alive packets.
Now we can restart the Qlik Sense Repository Service for the change to take effect.
Remember to repeat these steps on all remaining rim nodes.
If you’d like more information,
Take advantage of the expertise of peers, product experts, and technical support engineers
by asking a question in a Qlik Product Forum on Qlik Community.
Or search for answers using the new SearchUnify tool.
It searches across our Knowledge Base, Qlik Help, Qlik Community, Qlik YouTube channels and more, all from one place.
Also check out the Support Programs space.
Here you can learn directly from Qlik experts via a Support webinar, like Techspert Thursdays.
And don’t forget to subscribe to the Support Updates Blog.
Thanks for watching.
Nailed it!
Attached is a downloadable .mp4 video file for those who cannot view YouTube videos.
#QlikSupport
This video is part of the Qlik Fix Video series. If you found this video useful, check out the other Qlik Fix Videos.
This video walks through resolving the “No Such Page” message when creating a new sheet in QlikView.
Here is a link to more information in the Support Knowledge Base:
Creating a New Sheet Object in QlikView AJAX client returns "No Such Page"
Video Transcript:
hi and welcome to Qlik Fix! if you use windows IIS as the web server instead of QlikView web server you may experience an issue with the ajax client after installing or upgrading to click the server april 2020 initial release sr1 sr2 or sr3 when opening a qvw from the access point and attempting to create a new sheet object you're very likely to experience an issue of a pop-up which states new sheet object no such page this will also be displayed when you attempt to view the properties of an existing object to fix this issue we need to add a new mime type to iis we open iis manager ensure the default website is highlighted and then double click on mime types under actions we click add enter dot qvpp for file name extension and text slash html for mime type click ok we go back to our access point and open qvw and refresh to ensure the properties from iis are propagated now when we click the new sheet object icon from the toolbar we see the expected pop-up that contains qlikview objects and when we right-click on an existing object and choose properties we're able to see the properties. nailed it!
Attached is a downloadable .mp4 video file for those who cannot view YouTube videos.
#QlikSupport
This video is part of the Qlik Fix Video series. If you found this video useful, check out the other Qlik Fix Videos.
This video demonstrates how to use LDAP filters and common examples when setting up Qlik Sense User Directory Connector (UDC).
Here is a link to more information in the Support Knowledge Base:
Qlik Sense: Configuring and testing LDAP filters for User Directory Connector
Video Transcript:
Hi and welcome to Qlik Fix!
This video demonstrates how to use LDAP filters and common examples when setting up Qlik Sense User Directory Connector (UDC).
Qlik Sense uses the UDC to synchronize and retrieve new user entries from the supported User Directory service or database of choice.
When creating a UDC, the default behavior is to only synchronize data for existing users.
Users are added to the Qlik Sense database dynamically as they use their credentials or are authenticated via SSO when accessing the Hub or QMC.
It is possible however to disable the setting "Sync user data for existing users", which will result in all available users being retrieved and added to the Qlik Sense database.
In this scenario, when connecting to a Directory Service, it is recommended that an LDAP filter is put in place in order to help retrieving only the relevant users.
The RFC for "String Representation of LDAP Search filters" can be reviewed under the this location. (https://tools.ietf.org/html/rfc2254)
Search string syntax information and examples can be found in TechNet on the article "LDAP Syntax Filters" shown here. (https://social.technet.microsoft.com/wiki/contents/articles/5392.active-directory-ldap-syntax-filters.aspx)
As an example, we will use the following string to retrieve all users under the Active Directory Security Group "Qlik Sense Users".
This string searches for members of the specific group which has the DistinguishedName value as stated here.
This value can be found by enabling Advanced Features in the Active Directory Users and Computers console.
Then under the Group's properties, under Attribute Editor, find the distinguishedName value.
After synchronizing the UDC we can see the remaining users are imported.
Another common filter for retrieving all users within all nested groups is shown here.
This string contains a matching rule defined by LDAP that acts as an extended match operator, which allows for recursive searches.
See more information under the following Microsoft documentation website. (https://docs.microsoft.com/en-us/windows/win32/adsi/search-filter-syntax)
In this example we see that Group0 is a member of "Qlik Sense Users" group, and the members of Group0 were now imported due to the recursive search.
Keep in mind that the LDAP filter string can be tested directly using the AD Users and Computers console.
To do so right-click the domain name, then select Find. Specify this as a Custom Search, and select the Advanced tab.
Here the search strings can be tested before applying them to the Qlik Sense UDC.
If you’d like more information,
search for answers using the unified search tool on the Support Portal.
It searches across the support knowledge base, Qlik Community, Qlik Help site, and Qlik YouTube channels.
Take advantage of the expertise of peers, product experts, and technical support engineers by asking a question in a Qlik Product Forum on Qlik Community.
And don’t forget to subscribe to the Support Updates Blog.
Thanks for watching!
Attached is a downloadable .mp4 video file for those who cannot view YouTube videos.
#QlikSupport
This video is part of the Qlik Fix Video series. If you found this video useful, check out the other Qlik Fix Videos.
This video will show an example of how Analytic Connections can be used to enable external calculation engines that act as Server Side Extensions (SSE). In this example Qlik Sense connects to an R server for extending expression capabilities in Qlik Sense Apps while offloading the calculations to the R server engine.
Here is a link to more information in the Support Knowledge Base:
Video Transcript:
Hi and Welcome to Qlik Fix!
This video will show an example of how Analytic Connections can be used to enable external calculation engines that act as Server Side Extensions (SSE).
In this example Qlik Sense connects to an R server for extending expression capabilities in Qlik Sense Apps while offloading the calculations to the R server engine.
Analytics Connection use gRPC protocol to communicate with the Server-Side Extension.
gRPC does not support R-Script language, so we need to use the open-source Qlik Sense R-Plugin as a connector to the R-Server.
The plugin can be downloaded in this location. Make sure to review the contents of the readme file including the License information.
Qlik Support does not support this R plugin software directly, which is provided as-is. Inquiries should be submitted via Github under this location. (https://github.com/qlik-oss/sse-r-plugin/issues)
In this example we will download, build, and run the plugin on the R server.
First, download and unzip the contents where the plugin will live moving forward. Then, we need to be built it using Microsoft Visual Studios.
A pre-requisite for the R-Plugin is Visual Studios 2015 or later.
Open the solution file ServerSideExtension.sln and run the build twice.
This should create the plugin executable under this location. (sse-r-plugin-master\csharp\SSEtoRserve\bin\Debug)
Next, since the plugin default setting is to accept only local requests via the loopback interface, we will configure it to listen for connection requests on all network interfaces of the R server.
Open the config file shown here, and under grpcHost, set the value to 0.0.0.0.
Also note that in this scenario the default setting of the rserveHost value as the loopback IP, will work since the plugin is being installed on the R server.
The R-Plugin connection to R is made to a service called RServe, which may not have been installed yet.
RServe can be installed via the R Console in either RGui or RStudio with the following commands:
To install the RServe package, will need to pick a mirror. Then invokes the needed library, and then starts the RServe server.
Note that additional dependent libraries may need to be installed depending on the desired functionality. See information on this under the GetStarted.md file in GitHub.
Next we can run the R-plugin executable SSEtoRserve.exe which will start listening on port 50051 by default.
Now we can finally configure the Analytic connection via QMC.
The name for the connection is actually used within the Qlik Sense app when invoking the server side extension.
We will name it R as it is referenced this way in example Qlik Sense Apps available.
The Host field should be set to the hostname of the server running the R-Plugin.
Keep in mind that even if the Plugin is installed on the Qlik Sense Central node, if there are other Rim nodes in the environment with the Engine service enabled, the hostname should be set to the actual server name, not as localhost.
Next, set the default tcp port for the plugin, and click Apply.
The R-plugin includes sample Qlik Sense apps which can be imported.
With this particular sample app we can look at basic load script statements and expression that do not require any additional libraries packages.
Note in the Load Script editor how the Extension clause needs to precede the name given to the plugin in the configured Analytic Connection, which in this case is named "R".
See more information on Load script syntax on Qlik's help site under the following location. (https://help.qlik.com/en-US/sense/November2020/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)
In App objects, the expression syntax is similar, and starts with the plugin name configured in the Analytic connection, followed by available functions retrieved from the plugin.
When using the default functions included with the R plugin, an R-script string needs to be included as a parameter, along with references to the data to be submitted with the request.
In this example, we use the R-Scrip function paste() to concatenate the first and second words submitted as data.
In this other KPI object, we use a defined function to only submit the data and obtained the result.
Defined functions can be added on the fly to the Function Definitions JSON file shown here.
In order to enable this functionality, add the json file path string as the value for the parameter shown here in the plugin configuration file mentioned earlier in the video.
The server side extension plugin activity can be observed when running the process interactively.
The activity also gets registered in the Log files under this location.
Reviewing this sample app we can see more examples of other custom expressions that use the server-side-extension and have the calculation offloaded to the R server.
If you’d like more information,
Take advantage of the expertise of peers, product experts, and technical support engineers
by asking a question in a Qlik Product Forum on Qlik Community.
Or search for answers using the new SearchUnify tool.
It searches across our Knowledge Base, Qlik Help, Qlik Community, Qlik YouTube channels and more, all from one place.
Also check out the Support Programs space.
Here you can learn directly from Qlik experts via a Support webinar, like Techspert Thursdays.
And don’t forget to subscribe to the Support Updates Blog.
Thanks for watching.
Nailed it!
Attached is a downloadable .mp4 video file for those who cannot view YouTube videos.
#QlikSupport
This video is part of the Qlik Fix Video series. If you found this video useful, check out the other Qlik Fix Videos.
This video will cover how to enable and test JSON Web Token (JWT) authentication on Qlik Sense.
Here is a link to more information in the Support Knowledge Base:
Qlik Sense: How to set up JWT authentication
Video Transcript:
Hi and welcome to Qlik Fix!
This video will cover how to enable and test JSON Web Token (JWT) authentication on Qlik Sense.
The first step is to create a new Virtual Proxy which serves as the authentication component in Qlik Sense.
The Virtual Proxy needs a unique Name, Prefix, Session cookie header name, an Engine server to use, and to be linked to one of the available Proxy servers.
Under Authentication, pick JWT - commonly read as Jot - for Authentication method.
For the JWT Certificate we will use the Qlik Sense self-signed server certificate in PEM format. It can be found under this location.
Keep in mind that any certificate for which the Private Key is used to generate the JSON Web Token (JWT), can be used here.
The server certificate private key is also found here and will be used to generate the token.
Next, open the PEM formatted server certificate with a text editor and paste the content in the Virtual Proxy configuration.
We also need to configure JWT attribute for user ID and for user directory which will need to match the ones we configure when generating the token.
Save the settings and now for generating the token we can leverage the commonly used site jwt.io, as an example.
We will select the algorithm RS256, then add the userID and userDirectory attributes previously configured in the Virtual Proxy.
Make sure to set the values for these attributes to an intended licensed user that will be authorized access, then open the PEM formatted private key file and copy the content to the appropriate field on the website.
Notice how the JWT is generated when the Private Key in PEM format is added.
To validate the signature, we can add the PEM formatted server certificate in the appropriate field.
This confirms that the server cert configured in the Virtual Proxy should be able to validate the JWT signature as long as it is not an encrypted token and the algorithm used is either RS256, RS384, or RS512.
Now for testing we need to use the token when accessing the Hub or QMC.
In this example we will use Fiddler Classic version as it is a widely used tool.
It will allow us to inject the needed Security header and then inspect the request Headers.
First, ensure HTTPS decryption is enabled.
Then configure the Authorization header under the Filters tab as seen here. The JWT token is pasted after the word Bearer as shown here.
Start the Capture, and now when accessing the QMC or Hub using the configured Vitual Proxy prefix in the URL, the licensed user referenced in the token should be allowed access.
We can see in the Inspection tab where the header was injected and sent to the Qlik Sense server with the token.
Under the Auth tab the JWT as content of the Authorization Header should be displayed.
The same can be performed with the Fiddler Everywhere version after enabling HTTPS traffic decryption and adding the authorization header in a similar fashion.
Another and perhaps simpler alternative for testing is to use a Google Chrome extension such as Modheader which also injects the authorization header.
If you’d like more information,
Take advantage of the expertise of peers, product experts, and technical support engineers
by asking a question in a Qlik Product Forum on Qlik Community.
Or search for answers using the new SearchUnify tool.
It searches across our Knowledge Base, Qlik Help, Qlik Community, Qlik YouTube channels and more, all from one place.
Also check out the Support Programs space.
Here you can learn directly from Qlik experts via a Support webinar, like Techspert Thursdays.
And don’t forget to subscribe to the Support Updates Blog.
Thanks for watching.
Nailed it!
Attached is a downloadable .mp4 video file for those who cannot view YouTube videos.
#QlikSupport
This video is part of the Qlik Fix Video series. If you found this video useful, check out the other Qlik Fix Videos.
his video demonstrates how to create a new app in Qlik Sense Enterprise SaaS.
Here is a link to more information in the Support Knowledge Base:
Article - How to Create an App in Qlik Sense Enterprise SaaS
Managing spaces in Qlik Sense Enterprise SaaS
Top 5 Things to Know When Using Qlik Sense Enterprise SaaS
Attached is a downloadable .mp4 video file for those who cannot view YouTube videos.
Video Transcript:
Hi and welcome to Qlik Fix.
This video will demonstrate how to create a new app in Qlik Sense SaaS.
First, login to your Qlik Sense SaaS tenant.
Logging in will redirect you to the tenant hub, on the home tab.
To create an app, click on the Add New button at the top.
Select New Analytics App.
Enter a name, select the space, there’s a link below to a video which discussed more about spaces.
A description and tags can also be added to help organize your apps.
And there it is. Click on the app to open.
First, you need to add some data. You can drag and drop or go into the script editor.
I’ll click the first option,
The Data Files location is available by default. You can see, there are some files that have already been added here in the past.
Select a file to add,
Qlik recognizes the format as an excel file.
Select the sheets, I’ll do all three in the file since the data is all inter-related.
Next.
This is the data manager. This is where connection between tables can be created.
You can see that the insight adviser is providing some recommendations automatically based on the data. I agree with that analysis and select Apply All.
The tables are connected
And then press the Load the Data button to load this data into memory.
Now you can use the insight advisor to create some visualizations, go to sheet to create them manually or continue in the Data Manager.
I’m going to Sheets.
Here are the data fields that have been loaded.
I’ll start with a simple bar chart. Drag that to the sheet.
It prompts to add a dimension and measure.
Add the dimension City, and the measure Sales, sum of Sales.
This chart now shows the sum of sales by city.
Click on the ‘Done editing’ button.
And now you can start to explore and analyze the data.
I hope this helps.
If you’d like more information,
Take advantage of the expertise of peers, product experts, and technical support engineers
by asking a question in a Qlik Product Forum on Qlik Community.
Or search for answers using the new SearchUnify tool.
It searches across our Knowledge Base, Qlik Help, Qlik Community, Qlik You Tube channels and more, all from one place.
Also check out the Support Programs space.
Here you can learn directly from Qlik experts via a Support webinar, like Techspert Thursdays.
And don’t forget to subscribe to the Support Updates Blog.
Thanks for watching.
This video is part of the Qlik Fix Video series. If you found this video useful, check out the other Qlik Fix Videos.
This video covers what log files can be used for troubleshooting Qlik Sense Multi-Cloud deployment issues, as well as increasing the log level if needed.
Here is a link to more information in the Support Knowledge Base:
Multi-Cloud deployment logs and how to change logging level
Video Transcript:
Hi and welcome to Qlik Fix!
This video covers what log files can be used for troubleshooting Qlik Sense Multi-Cloud deployment issues, as well as increasing the log level if needed.
When troubleshooting issues with the Multi-Cloud (a.k.a Hybrid) deployment setup, the logs generated by the Hybrid Deployment and Setup Console services can be investigated.
Here as an example where we see an error when configuring a multi-cloud deployment that uses Okta as the Identity provider.
The Deployment and Setup Console logs are stored in these locations.
Looking at the Hybrid Setup Console and Deployment Service logs gives us additional troubleshooting information.
With the Multi-cloud Deployment successfully set up, if having issues with Application Distribution to the Cloud, the App Distribution Service trace logs can be reviewed for details.
It is found in this location.
If needed, the logging level of the Hybrid Deployment and App Distribution Services can be increased when troubleshooting.
To do so, the appsettings.json files for each service needs to edited as shown here to increase logging from the default Information to Debug level.
Once the file is saved with the new setting, the Qlik Sense Dispatcher service needs to be restarted.
If you’d like more information,
Take advantage of the expertise of peers, product experts, and technical support engineers
by asking a question in a Qlik Product Forum on Qlik Community.
Or check out the Support Programs space.
Here you can search for answers in the Support Knowledge Base,
Learn directly from Qlik experts via a Support webinar, like Techspert Thursdays.
And don’t forget to subscribe to the Support Updates Blog.
Thanks for watching.
Nailed it!
Attached is a downloadable .mp4 video file for those who cannot view YouTube videos.
#QlikSupport
This video is part of the Qlik Fix Video series. If you found this video useful, check out the other Qlik Fix Videos.
This video explains where to find the reload script logs depending on where the reload was triggered.
Here is a link to more information in the Support Knowledge Base:
How to find the Script (Reload) logs in Qlik Sense Enterprise
Video Transcript:
Hi and welcome to Qlik Fix!
This video explains where to find the reload script logs depending on where the reload was triggered.
When the app reload is triggered via the Hub from the Qlik Sense Data load editor (DLE), reload logs are placed on the server running the Qlik Sense Engine that is currently in use by the client.
This means that in a multi-node environment, each RIM node with an Engine service used by the specific Virtual Proxy needs to be checked for the new reload script log file.
One common way to know before hand which RIM node Engine service has been used is to use the function computername(), as seen in this example with a Text object.
It outputs the hostname of the server hosting the Engine service that is currently being used by the client.
In this case qlikserver2 is in use. We see here the reload task was saved in this location on qlikserver2 itself.
The log file name will contain the App ID as reference.
Note that unlike some other logs, script logs generated via the Hub do not get archived in the Share persistence location.
The share persistence storage location is used to store the reload script logs for reloads triggered by Tasks. This includes tasks triggered manually, or by being scheduled.
These script logs get archived in the Share as soon as the reload task is concluded.
In order to check the share location see Service cluster in QMC, under Archived logs root folder.
In that share location we see the log file created by the last reload task under the folder created for that RIM node, under the Script sub-folder.
Here the App ID is also used in the file naming convention for reference.
Note that by default only 4 script log files per App will be kept by Qlik Sense in the ArchivedLogs location.
The RIM node's host name can be retrieved at the same place that the most recent reload log can be retrieved via QMC.
Under the Status column when clicking on the Information icon the host name will be at the top, and the most recent log file can be downloaded by clicking on the "Download script log" button.
If you’d like more information,
Take advantage of the expertise of peers, product experts, and technical support engineers
by asking a question in a Qlik Product Forum on Qlik Community.
Or check out the Support Programs space.
Here you can search for answers in the Support Knowledge Base,
Learn directly from Qlik experts via a Support webinar, like Techspert Thursdays.
And don’t forget to subscribe to the Support Updates Blog.
Thanks for watching.
Nailed it!
Attached is a downloadable .mp4 video file for those who cannot view YouTube videos.
#QlikSupport
This video is part of the Qlik Fix Video series. If you found this video useful, check out the other Qlik Fix Videos.
This video demonstrates how to find two different types of Qlik Connector log files: the Connector logs themselves, and the Driver logs.
Here is a link to more information in the Support Knowledge Base:
Article - How To Collect Logs From Qlik ODBC Connector Package
Attached is a downloadable .mp4 video file for those who cannot view YouTube videos.
#QlikSupport
Video Transcript:
Hi and welcome to Qlik Fix.
This video will demonstrate how to find the two different types of Qlik Connector log files, the Connector logs themselves, and the Driver logs.
Both types of log files will be necessary when investigating a Qlik Connector related issue.
The default location for Qlik Connector logs is on the C: drive
Program Data, Qlik, Custom Data.
There is a separate folder for each connector or connector package.
In this example, we’re be looking for an error with a connection to Microsoft SQL server, which is part of the ODBC Connector package.
The name of the log file begins with the name of the server machine where the Qlik Connector is installed.
Opening the log file, and scrolling to find the error message I’m interested in,
There was an error at this time, and it was a ‘Login failed’ error.
The connector log indicates the specific driver that was used for this connection,
in this case it’s MS SQL server, mssql.
That will be useful for the next step of turning on Driver logging.
By default, Driver logs are disabled.
To enable them while troubleshooting, Open the registry editor,
Locate the registry entries under Local Machine, Software, Qlik.
This folder contains subfolders for every driver that comes bundled with the ODBC connector package.
We want to look at the MS SQL Server, so locate this.
All of the subfolders have the same structure and similar registry settings.
Adjust the Log Level and Log Path settings.
The log level can be a value from 1 to 6, with 6 being the highest level of logging.
For troubleshooting connections, set this to 6.
It’s recommended to use the same path as the connector logs, just to make it easier to find all connector logs.
Copy that folder path.
Paste in the registry value for Log Path.
Save.
The next time the connection is attempted, the driver log file will be generated.
The file is called Qlik Server ODBC Driver.
There is a lot of information and tracing date in these files.
Be aware when driver logging is enabled, and disable them once troubleshooting and log file collection has been done.
The file size for these logs even when everything is working fine is quite large and will affect performance in a production environment if left on.
I hope this helped.
If you’d like more information,
Take advantage of the expertise of peers, product experts, and technical support engineers
by asking a question in a Qlik Product Forum on Qlik Community.
Or check out the Support Programs space.
Here you can search for answers in the Support Knowledge Base,
Learn directly from Qlik experts via a Support webinar, like Techspert Thursdays.
And don’t forget to subscribe to the Support Updates Blog.
Thanks for watching.
Nailed it!
This video is part of the Qlik Fix Video series. If you found this video useful, check out the other Qlik Fix Videos.
This video demonstrates how to install Qlik CLI, a tool to make API calls to Qlik Sense.
Here is a link to more information in the Support Knowledge Base:
Article - How to Install Qlik CLI
Attached is a downloadable .mp4 video file for those who cannot view YouTube videos.
#QlikSupport
Video Transcript:
Hi and welcome to Qlik Fix.
This video will demonstrate how to install Qlik CLI, a tool to make API calls to Qlik Sense.
It allows you to perform most of the same configuration changes that can be done in the QMC,
but via commands in PowerShell instead.
The Qlik CLI installer can be downloaded from GitHub. The link is below.
You’ll need to run the installation command from PowerShell 4.0 or newer.
The commands can be found on GitHub along with the installer.
First, download the installer files from here.
They will need to be unzipped to this folder under Program Files, Windows PowerShell, Modules.
Next, Open the PowerShell console with Administrator rights.
The first command is to Set the Execution Policy.
Next, be sure to run the install commands from the Qlik CLI folder.
And run the list of commands as documented to import the Qlik CLI module
Yes to all.
The installation has completed.
To verify the installation was successful, from the View menu, set PowerShell to Show Command Add-ons.
In the drop down, Qlik CLI should be an option now.
There is the Qlik CLI module.
All of the Qlik CLI commands are listed here.
From here you can copy the commands, or
You can even search for commands, like to see all of the tasks or run a task
I hope this helped.
If you’d like more information,
Take advantage of the expertise of peers, product experts, and technical support engineers
by asking a question in a Qlik Product Forum on Qlik Community.
Or check out the Support Programs space.
Here you can search for answers in the Support Knowledge Base,
Learn directly from Qlik experts via a Support webinar, like Techspert Thursdays.
And don’t forget to subscribe to the Support Updates Blog.
Thanks for watching.
Nailed it!
This video is part of the Qlik Fix Video series. If you found this video useful, check out the other Qlik Fix Videos.
This video covers the scenarios in which the "too many sessions active in parallel" error message is expected to occur, and how to prevent it.
For more information see knowledge base article via the link below:
Troubleshoot no access pass or too many sessions active in parallel on Qlik Sense hub
Video Transcript:
Hi and welcome to Qlik Fix!
This video covers the scenarios in which the "too many sessions active in parallel" error message is expected to occur, and how to prevent it.
Starting on the June 2019 release of Qlik Sense, the error message displayed here became a common occurrence.
Prior to the June 2019 release and since April 2018 when Professional and Analyzer licensing model was released, the error message indicating "you have no access pass" was expected to be displayed instead, which was misdleading.
The issue is due to the maximum allowed five authentication sessions that can be active at any time in Qlik Sense. See Access Assignment in Qlik Help site. (https://help.qlik.com/en-US/sense-admin/November2020/Subsystems/DeployAdministerQSE/Content/Sense_DeployAdminister/Common/Server-Licensing-Access-Types.htm)
The maximum of five allowed sessions applies to authenticated licensed users, so after opening multiple authentication sessions from different browsers or computers, we see the error message displayed to the client after attempting to open the sixth session.
In this storage location we can review the Qlik Sense repository audit security logs which will have lines registered indicating that the SessionCount has reached a value of five, so it logs UsageDenied in reference to this issue.
Note that different tabs on the same browser normally use the same authentication session and do not lead to the same issue.
This issue is more commonly observed when an administrator uses the Qlik Sense service account to manage and develop Apps via the Hub.
This occurs because the service account has been assigned a professional or analyzer license, and the number of sessions limit is imposed not just for client connections, but also internal system connections to the Qlik Sense Proxy API, such as for Monitoring app reload tasks, which use the service account by default.
In order to prevent this issue, administrators should not use the service account for developing and managing apps via the Qlik Sense hub.
Instead, use another licensed account, and do not allocate a license to the Qlik Sense service account.
If the issue is reported with a regular user account, make sure the maximum number of sessions is not being reached for the user.
For more information on how to count the number of sessions, see the knowledge base article "How to count sessions in Qlik Sense". (https://community.qlik.com/t5/Support-Knowledge-Base/How-to-count-sessions-in-Qlik-Sense/ta-p/1714209)
Note that when allocating the legacy User Access Pass to the service account, this issue may also delay or prevent Monitoring app reload tasks from being performed successfully.
This happens because the Qlik Sense service account is used to create sessions with the Qlik Sense Proxy API during the reload.
In order to prevent reload task issues, the recommendation is again to leave the Qlik Sense service account as a RootAdmin, without any license allocated to it.
An alternative would be to use another RootAdmin for the monitoring apps Data Connections that is not used in App development, and has no license allocated.
If you’d like more information,
search for answers using the unified search tool on the Support Portal.
It searches across the support knowledge base, Qlik Community, Qlik Help site, and Qlik YouTube channels.
Take advantage of the expertise of peers, product experts, and technical support engineers by asking a question in a Qlik Product Forum on Qlik Community.
And don’t forget to subscribe to the Support Updates Blog.
Thanks for watching!
Attached is a downloadable .mp4 video file for those who cannot view YouTube videos.
#QlikSupport
This video is part of the Qlik Fix Video series. If you found this video useful, check out the other Qlik Fix Videos.
This video demonstrates how to find important Qlik Connector details on Qlik Sense Enterprise SaaS.
Here is a link to more information in the Support Knowledge Base:
Article - How to Find Qlik Connector Details / Version
Attached is a downloadable .mp4 video file for those who cannot view YouTube videos.
#QlikSupport
Video Transcript:
Hi and welcome to Qlik Fix.
This video will demonstrate how to find important Qlik Connector details on Qlik Sense Enterprise SaaS.
However, the process is almost exactly the same in Qlik Sense Enterprise on Windows.
First open an app from the hub.
On the Prepare tab at the top, select the Data load editor
In the Data Connections panel, you can view the existing connections
Or clicking on Create a New Connection opens the wizard, and displays several available connection types
Select the type of connection that you’re interested in
And click on the Information icon
This displays the package and version of this specific connector.
The Amazon Redshift connector is part of the ODBC connector package.
Qlik Sense SaaS will always have the latest version available.
However, if you’re running Qlik Sense Enterprise on Windows, the version details can be important.
Just to show another example,
The Bitly connector,
Show the details.
This connector is part of the Qlik Web Connectors package.
If you have a support case open with Qlik investigating a data connection, please provide a screen shot of this windows or these details to help.
If you’d like more information,
Take advantage of the expertise of peers, product experts, and technical support engineers
by asking a question in a Qlik Product Forum on Qlik Community.
Or check out the Support Programs space.
Here you can search for answers in the Support Knowledge Base,
Learn directly from Qlik experts via a Support webinar, like Techspert Thursdays.
And don’t forget to subscribe to the Support Updates Blog.
Thanks for watching.
Nailed it!
This video is part of the Qlik Fix Video series. If you found this video useful, check out the other Qlik Fix Videos.
This video demonstrates how to generate API Keys in Qlik Sense Enterprise SaaS using APIs.
Here is a link to more information in the Support Knowledge Base:
Article - How to Generate API Keys with APIs in Qlik Sense Enterprise SaaS
Qlik.Dev: Generate Your First API Key
Help.Qlik.Com: API Key Documentation
Attached is a downloadable .mp4 video file for those who cannot view YouTube videos.
#QlikSupport
Video Transcript:
Hi and welcome to Qlik Fix.
This video will demonstrate how to setup API Keys in Qlik Sense Enterprise SaaS using APIs.
For this example, I’ll be using PowerShell to send requests to a Qlik Sense Enterprise tenant.
These will be the same actions that could be performed via the user interface in the Hub,
but will be done via APIs instead.
Here is a simple script that will allow you to generate an API key.
More details can be found on Qlik.Dev, under Tutorials, and Generate Your First API Key.
But I’ll show you how to find the same commands using browser developer tools.
First, in the tenant Management Console, under Integration,
API Keys should be enabled here.
You can find more information about this step on Qlik.Dev.
The link is below.
Set the max token expiration in days, and the number of API keys per user.
These settings help maintain system security.
To generate an API key,
From the Hub, in the profile menu, select Settings.
Then API Keys.
To see the API code to use, you can open Browser Developer tools in Chrome via F12 or
In the browser menu under more tools and Developer Tools.
Click on the Network tab.
Then perform the action of getting a new API key by clicking the Generate New Key button.
Give it a name, generate.
Here’s the key.
Now in the dev tools, the request for that command is shown.
You can copy that.
And pasting it here in the Powershell script, you can see that nothing has changed. So it’s the same script found in the tutorial on Qlik.Dev.
Scrolling a little further down in the body, you can see name and expiry time.
Run the command,
And here is the current API key that’s about to expire,
And here is the new API key.
you would need to run this command before the API Key expires to get a new Key
and update your code with the newer API Key.
This is a handy method for renewing API keys that are about to expire, because you only need to visit the user interface the first time.
To demonstrate what it looks like when something goes wrong,
I’ll use the wrong format in the Expiry field.
First, it’s showing that the maximum number of API keys has been reached.
To resolve that issue, I will delete an expired API key.
Back to PowerShell and try again.
This time, an “Invalid Property Value – 400” Error is given.
That’s just showing that the wrong format is being used. And you can always find the correct code to be used by performing the action in the UI and copying the code from the developer tools.
I hope this helped.
If you'd like more information
Search for answers using the Unified Search
tool on the Support Portal.
It searches across the Support Knowledge Base,
Qlik Community, Qlik Help site and Qlik YouTube channels.
Take advantage of the expertise of peers, product experts and technical support engineers
by asking a question in a Qlik product forum on Qlik Community
And don't forget to subscribe to the Support Updates Blog.
Thanks for watching!
Nailed it!
This video is part of the Qlik Fix Video series. If you found this video useful, check out the other Qlik Fix Videos.
This video will demonstrate the configuration steps necessary to start using iFrames or Mashups with Qlik Sense Enterprise for Windows.
Here is a link to more information in the Support Knowledge Base:
Qlik Sense for Windows: All you need to know to start using iFrames/Mashups
Attached is a downloadable .mp4 video file for those who cannot view YouTube videos.
#QlikSupport
Video Transcript:
This video will demonstrate the configuration steps necessary to start using iFrames or Mashups with Qlik Sense Enterprise for Windows.
To begin with, Qlik Sense installs a self-signed certificate by default. This will only be recognized as trusted on the Qlik Sense server itself. Opening the hub from another machine will present a warning.
For this reason, it’s recommended to use a 3rd party certificate on the proxy.
Here in the QMC, proxy settings, in security.
Paste the certificate thumbprint here.
For testing purposes, you can install the root certificate of Qlik Sense directly on the machine you want to test from.
The root certificate from the server machine will need to be installed on the testing machine in the Personal certificates folder.
You can find the thumbprint of that certificate by double-clicking on the certificate,
Go to the details tab, scroll down
And there you will find the thumbprint.
Copy that,
And paste it into the proxy security settings in the QMC
And apply.
Secondly, a decision should be made about the type of Authentication to use for mashups or iFrame in Qlik Sense.
The recommended method would be Ticket Authentication. It’s a simple process of calling the proxy API to get a ticket and band it to the URL to create a session with Qlik Sense.
JWT, SAML and Header are also good methods of authentication to use, but some considerations apply for each.
Windows authentication is not recommended in the context of iFrame or mashups because changes to security and domain policies can severely impact functionality and also it will not work on non-Windows devices.
The decision depends on your needs. Here is chart outlining those options and providing links to more detailed information.
Next, there is an attribute called SameSite on the cookie settings for modern browsers.
If this is not configured correctly, the browser will reject the cookie for the intended iFrame or mashup.
In the QMC, under Virtual Proxies
A new virtual proxy setting should be created.
Under Advanced,
The HTTPS attribute must be enabled. This setting will not work with insecure HTTP connections.
And here, it’s recommended to select None, as this will allow the parent website to be from a different domain.
By default this SameSite attribute is set to Lax, which means that the parent website must be on the same domain to be accepted.
Setting this to Strict will prevent mashups or iFrame from working.
If you are running a version of Qlik Sense Enterprise earlier than April 2020,
These attributes must be manually set on the proxy config file, if running one of the earlier releases on this list.
That proxy config file found
under program files > Qlik > Sense > Proxy and the proxy.exe.config file.
The next important setting is the Host White list.
Click to add a new value.
This should be the server that is hosting the new mashup or iFrame.
And apply.
If this is not set, you might see a 400 Bad Request error in the browser, and the
“Http request Host is not allowed” warning message in the logs.
Finally, when using a multi-page mash-up, moving from one page to another, by default this action will close the session. This would result in losing selections when moving to a different page.
To change this behavior,
First, stop the Qlik Sense Engine Service.
Then open the Settings.ini file with administrator privileges, located in
ProgramData > Qlik > Sense > Engine
Add the EnableTTL=1 setting
And the Session preservation time is recommended to be set to 30 seconds.
Also, as with any setting change, a carriage return must be added after the last line.
I hope this helped.
If you'd like more information
Search for answers using the Unified Search
tool on the Support Portal.
It searches across the Support Knowledge Base,
Qlik Community, Qlik Help site and Qlik YouTube channels.
Take advantage of the expertise of peers, product experts and technical support engineers
by asking a question in a Qlik product forum on Qlik Community
And don't forget to subscribe to the Support Updates Blog.
Thanks for watching!
Nailed it!
This video is part of the Qlik Fix Video series. If you found this video useful, check out the other Qlik Fix Videos.
This video demonstrates how to find and sort Event logs from the Qlik Sense SaaS Management Console and reload logs from the hub.
Here is a link to more information in the Support Knowledge Base:
Qlik Cloud Services logs - Qlik SaaS solutions - QSEoCS - Qlik Sense Business - QSEoK
Managing Events - Help.Qlik.com
Attached is a downloadable .mp4 video file for those who cannot view YouTube videos.
#QlikSupport
Video Transcript:
Hi and welcome to Qlik Fix!
This video will demonstrate how to find and sort Event logs
from the Qlik Sense SaaS management console and reload logs from the hub.
First, if a reload task has failed. The easiest way to learn more is
From the hub, click on the three dots to see the available options with the app,
And select details.
From here, you can quickly see that last modified time.
Click on the reload history to see more.
Here you can identify the task in question
and review it from here or download it to investigate further.
It’s worth noting that the logs you see here are generated by manually triggering a reload or from scheduled reloads.
Loading the data from the script editor does not generate a log file.
From the Management Console, more logged activity can viewed.
In the Governance section under Events
Activities on the tenant are logged and can be reviewed from here.
The events can be filtered by the source,
By the event type to help you narrow your search.
Events are archived after 90 days.
If you need to review event information that has been archived,
There are instructions on Help.Qlik.Com for retrieving those archived events using the Qlik Audit API.
I hope this helped.
If you'd like more information
Search for answers using the Unified Search
tool on the Support Portal.
It searches across the Support Knowledge Base,
Qlik Community, Qlik Help site and Qlik YouTube channels.
Take advantage of the expertise of peers, product experts and technical support engineers
by asking a question in a Qlik product forum on Qlik Community
And don't forget to subscribe to the Support Updates Blog.
Thanks for watching!
Nailed it!
This video is part of the Qlik Fix Video series. If you found this video useful, check out the other Qlik Fix Videos.
This video demonstrates how the Windows authentication pattern setting in Qlik Sense Virtual Proxy authentication configuration enables either Integrated Windows Authentication (IWA) or form-based authentication.
Here is a link to more information in the Support Knowledge Base:
How the Windows Authentication Pattern in Qlik Sense Virtual Proxy settings works
Video Transcript:
Hi and welcome to QlikFix.
This video demonstrates how the Windows authentication pattern setting in Qlik Sense Virtual Proxy authentication configuration enables either Integrated Windows Authentication (IWA) or form-based authentication.
With Integrated Windows Authentication, NTLM is used to authenticate the user automatically, or by prompting the user for the credentials depending on the current system Internet Options as shown here.
This happens because the default Windows Authentication Pattern value "Windows", is present in the http User-Agent request header submitted by all major web browsers when communicating with Qlik Sense.
If there is no match, form-based authentication is used in which a login page is presented to the client when accessing the Hub or QMC.
Here we use the browser's developer tools to visualize the User-Agent headers sent to Qlik Sense when using Google Chrome, Internet Explorer, Microsoft Edge, and Firefox.
Notice that they all include similar, as well as distinct content in this header.
The value configured in the Virtual Proxy configuration is checked against this header for a match.
In this case we see the word "Windows" is present in all User-Agent headers, so integrated authentication using NTLM is used.
Enabling form-based authentication is useful in certain scenarios, such as when the browser does not automatically authenticate neither prompts the client for credentials due to environmental restrictions.
As a form-based authentication example, we have created a new Virtual Proxy configured with the string "Edg" in the Windows Authentication Pattern field.
Now when using this Virtual Proxy, we can see that Integrated Windows Authentication is only used with the Microsoft Edge browser.
Using Internet Explorer and any other browser however, leads to the web form login page, as seen here.
Note however that in both cases, Windows authentication is performed in the back-end and a Ticket is obtained by the default Windows authentication module since the Authentication module redirect URI field is left blank.
If you’d like more information,
search for answers using the unified search tool on the Support Portal.
It searches across the support knowledge base, Qlik Community, Qlik Help site, and Qlik YouTube channels.
Take advantage of the expertise of peers, product experts, and technical support engineers by asking a question in a Qlik Product Forum on Qlik Community.
And don’t forget to subscribe to the Support Updates Blog.
Thanks for watching!
Attached is a downloadable .mp4 video file for those who cannot view YouTube videos.
#QlikSupport