Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Aug 3, 2023 2:58:25 AM
Aug 5, 2017 9:44:43 AM
This article explains how to connect to the QMS API using HTTPS with the QVClient certificate.
Prerequisites:
In Visual Studio, once you have followed the procedure in QlikView: Connect to QMS API with Visual Studio then you can just right-click on the QMS API reference in the solution explorer and choose "Configure service reference".
Modify "http" to "https" in the connection address.
In Visual Studio solution explorer, find App.config and double-click to edit it.
This customization is provided as is. Qlik Support cannot provide continued support of the solution. For assistance, reach out to our Professional Services or engage in our active Integrations forum.
Add this section to the app.config inside the <system.serviceModel> ... </system.serviceModel> tags:
<behaviors>
<endpointBehaviors>
<behavior name="ServiceKeyEndpointBehavior">
<clientCredentials>
<clientCertificate findValue="CN=QVProxy" x509FindType="FindBySubjectDistinguishedName" storeLocation="LocalMachine" storeName="My" />
<serviceCertificate>
<authentication certificateValidationMode="ChainTrust" revocationMode="NoCheck"/>
</serviceCertificate>
</clientCredentials>
</behavior>
</endpointBehaviors>
</behaviors>
Note:If you get the following error "The client certificate is not provided. Specify a client certificate in ClientCredentials." add behaviorConfiguration="ServiceKeyEndpointBehavior" to all of the "endpoint" sections in the app.config
Hi @Damien_V
thank you for sharing the solution. We don't use Visual Studio to trigger the task, but we have another application called Alteryx. When we had the windows group authentication, the triggering was working fine. But it broke when we switched to the digital cert authentication.
As per the article, I exported the cert from the QMS server and imported it on the Alteryx server successfully. However the trigger still wont work. The other part of the article is to update the QMS Service reference to use HTTPS and update the app.config in the client code, which I don't seem to find on the altreyx server. Any idea what I need to do to get this fixed?
Thank you for your response.
Hello @ilyas393
Please post about your query in our QlikView Integration forums or in the respective forum of the third party provider.
All the best,
Sonja
Hi @Sonja_Bauernfeind , thank you for the suggestion.
I have posted it here - EDX Triggers using Alteryx and QlikView's Digital ... - Qlik Community - 2103693
I appreciate any pointers to get my issue fixed. thank you
Hi @Damien_V and @Sonja_Bauernfeind,
I think there is some configuration step missing in the article. After successfully implementing digital certificate authentication across all the nodes in QlikView, I cannot even trigger the EDX directly (manually) from the QMS Server where the EDX setup sits.
I get this error message:
Failed to create a client to the specified Uri.
The request channel timed out while waiting for a reply after 00:00:59.9375180. Increase the timeout value passed to the call to Request or increase the SendTimeout value on the Binding. The time allotted to this operation may have been a portion of a longer timeout.
Do we need to make changes to the QMSEDX.exe.config file? I have tried https and fully qualified QMS Server name in the endpoint settings and still no luck.
Appreciate any help.
Hi @Damien_V
I was able to figure out and fix the specified uri error, and I think I am pretty close to solving it. I am stuck with missing service key. do you know where can I find this or configure this service key?
Here is the error message I am getting now:
Error while starting task with id/name=taskname
Error message: Service key is missing
Failed to start the task!
I have already looked into Solved: Re: Service key is missing - Qlik Community - 1436424 and has behaviorConfiguration="ServiceKeyEndpointBehavior" in the config file
Thank you so much for your help.
Hi @Ilyas393
Were you able to resolve this issue? We are working on a similar solution using Power Shell.
Are you using PowerShell on your Alteryx server to connect to QlikView QMS API ?
Thanks & Regards,
Mahesh
No, I have not been able to resolve it yet. I am stuck with the error message: service key is missing.
Have you been able to resolve it yet?