ステップ 1: 許可をセットアップする - Amazon QuickSight

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ステップ 1: 許可をセットアップする

注記

埋め込み QuickSight Q 検索バーは、従来の QuickSight Q&A experience. QuickSight integrates を Amazon Q Business と統合して、新しい生成 Q&A エクスペリエンスを起動します。デベロッパーは、新しい生成 Q&A エクスペリエンスを使用することをお勧めします。組み込みの生成 Q&A エクスペリエンスの詳細については、「」を参照してください QuickSight 生成 Q&A エクスペリエンスに Amazon Q を埋め込む

以下のセクションでは、Q 検索バーを埋め込むために、バックエンドアプリケーションまたはウェブサーバーの許可をセットアップする方法を説明します。このタスクには、 AWS Identity and Access Management (IAM) への管理アクセスが必要です。

ダッシュボードにアクセスする各ユーザーは、Amazon にダッシュボード QuickSight へのアクセスとアクセス許可を付与するロールを引き受けます。これを可能にするには、 AWS アカウントに IAM ロールを作成します。IAM ポリシーをロールに関連付けて、それを引き受けるすべてのユーザーにアクセス許可を付与します。IAM ロールでは、特定のユーザープールに埋め込み URL を取得するアクセス許可を提供する必要があります。

ワイルドカード文字 * を使用することにより、特定の名前空間内の全ユーザーに URL を生成する許可を付与できます。または、特定の名前空間内のユーザーのサブセットに URL を生成する許可を付与することもできます。このためには、quicksight:GenerateEmbedUrlForRegisteredUser を追加します。

IAM ポリシーで条件を作成し、デベロッパーが GenerateEmbedUrlForRegisteredUser API オペレーションの AllowedDomains パラメータにリストできるドメインを制限できます。AllowedDomains パラメータはオプションのパラメータです。これにより、管理 QuickSightメニューで設定された静的ドメインを上書きし、代わりに生成された URL にアクセスできるドメインまたはサブドメインを最大 3 つ一覧表示するオプションがデベロッパーに付与されます。そして、この URL はデベロッパーのウェブサイトに埋め込むことができます。パラメータにリストされているドメインのみが、埋め込み Q 検索バーにアクセスできます。すなわち、この条件を設定していない場合、デベロッパーはインターネット上の任意のドメインを AllowedDomains パラメータにリストできてしまいます。

デベロッパーがこのパラメータで使用できるドメインを制限するには、AllowedEmbeddingDomains 条件を IAM ポリシーに追加します。AllowedDomains パラメータの詳細については、「Amazon QuickSight API リファレンスGenerateEmbedUrlForRegisteredUser」の「」を参照してください。

次のサンプルポリシーで、これらの権限が付与されます。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "quicksight:GenerateEmbedUrlForRegisteredUser" ], "Resource": "arn:partition:quicksight:region:accountId:user/namespace/userName", "Condition": { "ForAllValues:StringEquals": { "quicksight:AllowedEmbeddingDomains": [ "https://my.static.domain1.com", "https://*.my.static.domain2.com" ] } } } ] }

また、Amazon QuickSight リーダーとなる初めてのユーザーを作成する場合は、ポリシーに アクセスquicksight:RegisterUser許可を追加してください。

次のサンプルポリシーは、 QuickSight 初めて閲覧するユーザーの埋め込み URL を取得するアクセス許可を提供します。

{ "Version": "2012-10-17", "Statement": [ { "Action": "quicksight:RegisterUser", "Resource": "*", "Effect": "Allow" }, { "Effect": "Allow", "Action": [ "quicksight:GenerateEmbedUrlForRegisteredUser" ], "Resource": [ "arn:partition:quicksight:region:accountId:user/namespace/userName" ], "Condition": { "ForAllValues:StringEquals": { "quicksight:AllowedEmbeddingDomains": [ "https://my.static.domain1.com", "https://*.my.static.domain2.com" ] } } } ] }

最後に、作成したロールへのアクセスを許可するには、アプリケーションの IAM ID に関連付けられた信頼ポリシーが必要です。つまり、ユーザーがアプリケーションにアクセスすると、アプリケーションはユーザーに代わってロールを引き受け、 でユーザーをプロビジョニングできます QuickSight。

次の例は、サンプルの信頼ポリシーを示しています。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowLambdaFunctionsToAssumeThisRole", "Effect": "Allow", "Principal": { "Service": "lambda.amazonaws.com" }, "Action": "sts:AssumeRole" }, { "Sid": "AllowEC2InstancesToAssumeThisRole", "Effect": "Allow", "Principal": { "Service": "ec2.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

OpenId Connect または Security Assertion Markup Language (SAML) 認証の信頼ポリシーに関する詳細については、IAM ユーザーガイドの以下のセクションを参照してください。