Licensing service proxy Setup
You can handle the communication between the Qlik NPrinting licensing service and the license back-end with a proxy .
The Qlik NPrinting licensing service is included in Qlik NPrinting February 2020 and later releases and is used when Qlik NPrinting is activated using a signed key license. The Qlik NPrinting licensing service stores the information about the license, and communicates with a license back-end service, hosted by Qlik, for product activations and entitlement management. Port 443 is used for accessing the license back-end service and retrieving license information.
With Qlik NPrinting February 2020 or later you can configure the communication between Qlik NPrinting licensing service and the Qlik license back-end to be handled by a proxy.
In Qlik NPrinting, configuration of a proxy for the Qlik NPrinting licensing service is done using command line parameters. Both HTTP and HTTPS scheme are supported.
With Qlik NPrinting June 2020 or later NTLM and basic authentication capabilities to the licenses service when communicating over a HTTP tunnel are available. This allows you to require authentication on tunneling proxies and configure a more secure environment.
Anonymous authentication
Do the following:
-
Navigate to the service.conf file, which by default is located in:
%Program Files%\NPrintingServer\NPrinting\License\license.config
-
Locate the following line and uncomment it:
<!-- <add key="proxy-uri" value="https://localhost:8888" /> -->
-
Modify the value attribute to the proxy address:
<add key="proxy-uri" value="https://example.com:8080" />
- Save the file and close.
- Restart the Qlik NPrinting licensing service.
Setting up basic authentication for a proxy
To set up basic authentication for a proxy, do the following:
- Stop the Qlik NPrinting license service.
- Navigate to the service.conf file, which by default is located in:
%Program Files%\NPrintingServer\NPrinting\License\license.config
- Uncomment the following lines:
<!-- <add key="proxy-uri" value="https://localhost:8888" /> -->
<!-- <add key="proxy-basic-authentication" value="true" /> -->
<!-- <add key="proxy-username" value="username-without-domain" /> -->
- Set values for proxy-uri and proxy-username.
- To use a plain text password, uncomment:
<!-- <add key="proxy-password" value="clear-text-password" /> -->
- Set the value for proxy-password.
- To use an encrypted password (recommended) uncomment:
<!-- <add key="proxy-encrypted-password" value="script-generated-password" /> -->
- Open powershell and run the password encryption script located in:
%Program Files%\NPrintingServer\NPrinting\License\lEncrypt-Password.ps1
using the command:
Encrypt-Password.ps1 -password clear-text-password
- Set the output from the command as the value attribute in the tag.
- Save the file and close it.
- Restart the Qlik NPrinting licensing service.
Example configuration:
<appSettings>
<!--=========================================
License options
=========================================-->
<!--To be enabled if proxy tunneling is required-->
<add key="proxy-uri" value="https://localhost:8888" />
<!--NTLM authentication settings for proxy tunneling-->
<!--Enable Basic authentication-->
<add key="proxy-basic-authentication" value="true" />
<!--Enable NTLM authentication-->
<!-- <add key="proxy-ntlm-authentication" value="true" /> -->
<!--Domain for authentication-->
<!-- <add key="proxy-domain" value="windows-domain" /> -->
<!--Username for authentication (without domain)-->
<add key="proxy-username" value="myUser" />
<!--Encrypted password as generated by Encrypt-Password.ps1 -password [user password]-->
<add key="proxy-encrypted-password" value="ASDHJNCE243454NNJFWEJFJKFSD8U843RJKJCNDWC98RFNSDJVSKJDVR8UFVC9SJV09439FJSDJVOIHVSKV" />
<!--Clear text password, if encrypted version cannot be used-->
<!-- <add key="proxy-password" value="clear-text-password" /> -->
</appSettings>
Setting up NTLM authentication for a proxy
- Stop the Qlik NPrinting license service.
- Navigate to the service.conf file, which by default is located in:
%Program Files%\NPrintingServer\NPrinting\License\license.config
- Uncomment the following lines
<!-- <add key="proxy-uri" value="https://localhost:8888" /> -->
<!--<add key="proxy-ntlm-authentication" value="true" />-->
<!--<add key="proxy-domain" value="windows-domain" />-->
<!-- <add key="proxy-username" value="username-without-domain" /> -->
- Set values for proxy-uri, proxy-domain and proxy-username.
- To use a plain text password, uncomment:
<!-- <add key="proxy-password" value="clear-text-password" /> -->
- Set the value for proxy-password.
- To use encrypted password (recommended) uncomment:
<!-- <add key="proxy-encrypted-password" value="script-generated-password" /> -->
- Open powershell and run the password encryption script located in:
%Program Files%\NPrintingServer\NPrinting\License\lEncrypt-Password.ps1
using the command:
Encrypt-Password.ps1 -password clear-text-password
- Set the output from the command as the value attribute in the tag.
- Save the file and close it.
- Restart the Qlik NPrinting licensing service.
Example configuration:
<appSettings>
<!--=========================================
License options
=========================================-->
<!--To be enabled if proxy tunneling is required-->
<add key="proxy-uri" value="https://localhost:8888" />
<!--NTLM authentication settings for proxy tunneling-->
<!--Enable Basic authentication-->
<!--<add key="proxy-basic-authentication" value="true" />-->
<!--Enable NTLM authentication-->
<add key="proxy-ntlm-authentication" value="true" />
<!--Domain for authentication-->
<add key="proxy-domain" value="domain" />
<!--Username for authentication (without domain)-->
<add key="proxy-username" value="user" />
<!--Encrypted password as generated by Encrypt-Password.ps1 -password [user password]-->
<add key="proxy-encrypted-password" value="ASDHJNCE243454NNJFWEJFJKFSD8U843RJKJCNDWC98RFNSDJVSKJDVR8UFVC9SJV09439FJSDJVOIHVSKV" />
<!--Clear text password, if encrypted version cannot be used-->
<!-- <add key="proxy-password" value="clear-text-password" /> -->
</appSettings>