Quicksight integration and Dashboard Sharing
QuickSight is a cloud-powered business intelligence service that makes it easy to deliver insights. To integrate Quicksight with Amorphic application follow the the steps mentioned below
Subscribe to Quicksight in the region Amorphic application is deployed
Sign up for Quicksight, once you click sign up you’ll be provided with an option to select standard or enterprise.
Select enterprise edition and continue.
In the next screen select ‘Use Role based Federation(SSO)’ and then in the region drop down select AWS region same as Amorphic application deployed region. Give Quicksight Account name as Amorphic application name. Enter the email address for notifications in place of noreply@amorphicdata.com shown in image (if you don't need notifications, you can use noreply@amorphicdata.com) and then select finish.
It takes around 15 seconds to create an account. Once created, console will display Amazon Quicksight information. Select ‘Go to Amazon QuickSight’ button.
Once the enterprise edition is set up in the account, in the console we need to add the domain of Amorphic application in Quicksight. To do that select Manage Quicksight which will be dropped down once we select our profile on the top right corner of the console.
Once we select manage quicksight we will be able to see Domains and Embedding on the left hand side. We need to select that and add Domain name in the text box provided. Domain name is the amorphic application URL (Not the backend Cloudfront URL).
We do this to whitelist our domain and make it available for application to project dashboard urls. This link has the steps of how to add a domain: https://docs.aws.amazon.com/quicksight/latest/user/approve-domain-for-dashboard-embedding.html
For the first time, we need to create a dummy dashboard in quicksight and register it in the amorphic application. Open the dashboard details in the amorphic application(it will not display the embedded dashboard, but it creates a required user in the backend). This is a temporary hack to create the required user in the backend.
After this step following user will be created in Quicksight : {projectShortName}-Quicksight-Lambda-ExecutionRole/{projectShortName}-{env}-dashboards.
If user is unable to access private redshift from quicksight then check the 'Inbound rules' for the security group used for quicksight. It should have a inbound rule with 'All TCP' allowed to self-referencing security group.
From Amorphic 2.0, usernames in QuickSight will change from {projectShortName}-Quicksight-Lambda-ExecutionRole/lambdaccess to {projectShortName}-Quicksight-Lambda-ExecutionRole/{projectShortName}-{env}-dashboards
From Amorphic 2.2, the QuickSight service role needs kms:Decrypt permission to analyze data from AwsDataCatalog.