Aws-quicksight-embedding-dashboard
AWS Quicksight-ダッシュボードの埋め込み
また、Quicksightダッシュボードを外部アプリケーション/ウェブページに埋め込むことも、AWS Cognitoサービスを使用してユーザーアクセスを制御することもできます。 ユーザーコントロールを実行するには、CognitoでユーザープールとIDプールを作成し、EmbedダッシュボードポリシーをIDプールに割り当てることができます。
AWS Cognitoは、管理者が一時ユーザーを作成および管理してアプリケーションへのアクセスを提供できるようにするIAMサービスです。 IDプールを使用すると、これらのユーザープールの権限を管理できます。
安全なダッシュボードURLを生成し、ユーザーコントロールを実行する方法を見てみましょう-
手順1-ユーザープールとユーザーの作成
AWS Cognitoでユーザープールを作成し、ユーザーを作成します。 * Amazon Cognito→ユーザープールの管理→ユーザープールの作成*に移動します。
ステップ2-IDプールの作成
ユーザープールが作成されたら、次のステップはIDプールを作成することです。 [[1]] = arn%3Aaws%3Aiam%3A%3A015428540659%3Auser%2Fcognito&forceMobileApp = 0 [https://console.aws.amazon.com/cognito/home?region=us-east-1]
[新しいIDプールの作成]をクリックします。
IDプールの適切な名前を入力します。 [認証プロバイダー]セクションに移動し、[コグニト]オプションを選択します。
ステップ3-Cognitoロールの作成
ユーザープールID(ユーザープールID)とアプリクライアントIDを入力します(ユーザープールのアプリクライアントに移動し、IDをコピーします)。
次に、[プールの作成]をクリックし、[許可]をクリックして、IAMでIDプールのロールを作成します。 2つのCognitoロールが作成されます。
ステップ4-カスタムポリシーの割り当て
次のステップは、上記のステップで作成されたアイデンティティロールにカスタムポリシーを割り当てることです-
ダッシュボードのAmazonリソースネーム(ARN)を「*」の代わりに_quicksight:GetDashboardEmbedUrl” _の下に渡すと、ユーザーが1つのダッシュボードのみにアクセスするように制限できます。
ステップ5-Cognitoアプリケーションへのログイン
次のステップは、ユーザープールのユーザー資格情報でCognitoアプリケーションにログインすることです。 ユーザーがアプリケーションにログインすると、Cognitoは3つのトークンを生成します-
- IDToken
- アクセストークン
- 更新トークン
一時的なIAMユーザーを作成するには、資格情報は次のようになります-
一時的なIAM認証情報を生成するには、以下のパラメーターを指定してsts.assumeロールメソッドを呼び出す必要があります-
ステップ6-Quicksightでのユーザーの登録
次のステップでは、ステップ3で生成された資格情報に対して「quicksight.registerUser」を使用して、以下のパラメーターを使用してQuicksightにユーザーを登録します-
ステップ7-AWS設定ファイルを更新する
次に、ステップ5で生成されたユーザーのAWS構成を更新します。
ステップ8-Quicksightダッシュボードの埋め込みURLを生成する
手順5で作成した資格情報を使用して、以下のパラメーターを指定してquicksight.getDashboardEmbedUrlを呼び出し、URLを生成します。
上記の生成されたURLを使用して、アプリケーションから「QuickSightEmbedding.embedDashboard」を呼び出す必要があります。
Amazon Quicksightと同様に、組み込みダッシュボードも次の機能をサポートしています-
- ドリルダウンオプション
- カスタムアクション(新しいタブへのリンク)
- 画面上のフィルター
- CSVにダウンロード
- ビジュアルの並べ替え
- メールレポートのオプトイン
- ダッシュボードをデフォルトオプションにリセット
- ダッシュボードでの元に戻す/やり直しアクション