Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Problem when trying to embed Qlik's Sheet page into our sercure SSL website

Objective: To embed Qlik’s sheet page into our secure SSL web site.

Approach: Using the Qlik Sense Ticket method.

Referencing Web Sites:

https://community.qlik.com/blogs/qlikviewdesignblog/2014/12/08/tickets-in-qlik-sense

https://github.com/braathen/qlik-auth-net

Servers:

Qlik Sense Server

Port 80: Host our web site.

Port 4243: Qlik Sense Proxy

Port 8888: Qlik Sense HTTP Web

Web server running Apache

Port 443: HTTPS Web To Proxy both our web site and Qlik Sense HTTP Web

image004.jpg

Flow to achieve

User access our website via browser will hit Apache server with SSL. https://domain1.com

Apache will proxy the web site to Port 80 on Qlik Sense Server.

User sees the login page and login.

From backend, our web site will connect to Port 4243 on Qlik Sense Server, https://servername:4243/qps/ticket?Xrfkey=<KEY> to get the ticket.

Then our web site will return the URL in IFRAME carrying the ticket number. https://domain1.com/single/?appid=b573113a-1462-4763-9a59-bd3ebb9685e7&sheet=EcZvAHs&opt=currsel&Qli...<TICKET>

IFRAME will hit Apache with SSL as well to request Qlik sheet page, Apache will proxy to Port 8888 on Qlik Sense Server. http://servername:8888/single/?appid=b573113a-1462-4763-9a59-bd3ebb9685e7&sheet=EcZvAHs&opt=currsel&...<TICKET>

Apache retrieves the Qlik Sheet page result and send them to the user’s browser.

Error & Troubleshooting

We failed to see the Qlik Sheet page.

If we tried to access the URL in the IFRAME directly (copy the URL and access it), some javascript errors prompted.

image005.jpg

unnamed.jpg

index.jpg

When inspecting the error in Chrome, we saw the following error, which try to access wss://domain1.com/app/b573113a-1462-4763-9a59-bd3ebb9685e7?reloadUri=https://ct.ac2wave.com/single/?appid=...<TICKET>.

unnamed2.jpg

Since WSS is using port 443, when tried to change it to HTTPS, we are getting error like below.

unnamed3.jpg

If we change the hostname in the URL to internal hostname, we managed to see the page displayed nicely.

Question:

Does our proxy approach work?

Is the URL we use in the IFRAME correct?

“wss://” web socket is using port 443, what does single.js trying to reload? It seems like something is missing in the routing.

1 Reply
Not applicable
Author

You can not use Single api directly with ticket. First render an image from your proxy's content library(for example leaf.png) to get the session cookie. Then your browser authenticates with cookie and your embeeded objects will work.