2
votes

I am able to display the AWS quicksight dashboard on my web application.

However, i am not able to persist the dashboard on my web app for more than 5 minutes as the embedded URL expires as mentioned at (https://docs.aws.amazon.com/cli/latest/reference/quicksight/get-dashboard-embed-url.html)

I mean to say is, if i refresh my web page after 5 minutes i am not able to see Quickisight dashboard. It just displays the message : "We can't display this page (Insufficient permissions)."

Image for AWS Quicksight permission error after 5 minutes

I tried to generate the embedded URL every time my web-applications URL is hit/refreshed and use it directly in the js code. Hence, i tried to - run the aws cli to generate the embedded URL but i am unable to run it inside the native javascript code. - I tried to use nodejs to achieve the same, however, i am unable to understand as i have not worked on nodejs before.

1
Did you find any solution for this problem? Looking forward for ways to handle this.Headcult

1 Answers

2
votes

The getDashboardEmbedUrl API returns a temporary, presigned URL that identifies a single user and expires in 5 minutes. There is no way to change that expiration time.

You must call getDashboardEmbedUrl each time you load the page to get an embedding URL specific to the user who's loading the page.

Once you have loaded that temporary URL it will set appropriate cookies and redirect as necessary to get to the actual dashboard content.

Once you've loaded the dashboard, your session will last for a much longer period of time, up to 12 hours, which is configurable through the SessionLifetimeInMinutes parameter of the call to getDashboardEmbedUrl.