独立した名前空間のマルチテナンシーをサポートする - Amazon QuickSight

独立した名前空間のマルチテナンシーをサポートする

Amazon QuickSight Enterprise Edition では、名前空間によってマルチテナンシーがサポートされています。QuickSight の名前空間は、クライアント、子会社、チームなどを整理するために使用する論理コンテナです。名前空間は次の目標達成に役立ちます。

  • QuickSight サブスクリプションのユーザーが共有コンテンツを検出し、他のユーザーと共有することを許可します。同時に、ある名前空間のユーザーが別の名前空間のユーザーを表示したり操作したりできないようにすることもできます。

  • AWS アカウントを追加することなく、データを安全に分離し、多様なワークロードをサポートできます。データへのアクセスは、AWS のセキュリティ機能によって厳重に制御されています。ユーザーは、リソースに対する適切なアクセス許可を持っている場合にのみ、アセット (データやダッシュボードなど) を表示できます。また、アクセス許可を持つユーザーが、名前空間以外のユーザーにコンテンツを誤って公開することもありません。詳細については、Amazon QuickSight における AWS セキュリティを参照してください。

  • データフローおよび使用状況レポートを、名前空間ごとに整理してモニタリングできます。データとレポートを名前空間別に分類することで、コストとセキュリティ分析を簡素化できます。

  • ユーザーを名前空間に登録した後で、管理上の複雑さやオーバーヘッドが増加することはありません。

  • 名前空間は AWS リージョン にまたがるように設計されているため、ユーザーが別の AWS リージョン にサインインした場合でも使用制限に変化はありません。

現在、名前空間には以下の制限事項があります。

  • カスタム名前空間 (デフォルトの名前空間ではないもの) は、フェデレーテッドシングルサインオンユーザーのみがアクセスできます。

  • 以下をサポートする必要がある場合は、カスタム名前空間の代わりにデフォルトの名前空間を使用します。

    • パスワードベースのログイン

    • 認証情報ベースのアクティブディレクトリログイン

    • 行レベルのセキュリティ (RLS) を使用するデータセット

  • ある名前空間から別の名前空間にユーザーを直接転送することはできません。この操作の一部またはすべてをプログラムで実行することができます。詳細については、Amazon QuickSight API リファレンスを参照してください。各 API 操作ページの下部には、他言語の SDK による同じオペレーションへのリンクのリストがあります。利用可能な SDK を確認するには、AWS ご利用開始のためのリソースセンターSDK およびツールキットを参照してください。

既存の AWS アカウントを持っていない場合、または QuickSight にサインアップする必要がある場合は、以下のガイドラインを読み、Amazon QuickSight サブスクリプションへのサインアップ の適切な手順に従ってください。

すでに Standard Edition にサインアップしている場合は、サブスクリプションを Enterprise Edition に簡単にアップグレードできます。アップグレードを実行する担当者は、管理者権限を持つ QuickSight ユーザーである必要があります。詳細については、Standard Edition から Enterprise Edition への Amazon QuickSight サブスクリプションのアップグレードを参照してください。

Enterprise Edition のサブスクリプションを一定期間使用している場合は、ユーザーを名前空間に移行することもできます。QuickSight にサインアップしてユーザーを追加すると、すべてデフォルトの名前空間に配置されます。すべてのユーザーは、互いに直接対話し、互いにデータとダッシュボードを共有することができます。ユーザーを互いに分離するには、1 つ以上の追加の名前空間を作成します。

重要

QuickSight アセットとリソース (データセット、データソース、ダッシュボード、分析など) は、名前空間の外部に存在します。それらは、リソースのアクセス許可が付与されているユーザーのみに表示されます。

名前空間を実装するには、次の QuickSight API オペレーションを使用します。

注記

AWS CLI をインストールする必要がある場合は、AWS コマンドラインインターフェイスのAWS Command Line Interface ユーザーガイドにある AWS CLI バージョン 2 のインストールを参照してください。

ユーザを名前空間に追加するには、[RegisterUser] API オペレーションを使用します。各名前空間には、完全に独立したユーザーセットがあります。したがって、共通名の場合などは、複数の名前空間に同じユーザー名を作成できます。ユーザー ARN には、次の例に示すように、名前空間を区別するための修飾子が含まれています。

  • QuickSight は、これらの 2 つのエンティティを異なるユーザーと見なします。

    • arn:aws:quicksight:us-east-1:111122223333:user/namespace-123/username123

    • arn:aws:quicksight:us-east-1:111122223333:user/namespace-456/username123

  • QuickSight は、これらの 2 つのエンティティを同じユーザーとみなします。

    • arn:aws:quicksight:us-east-1:111122223333:user/namespace-123/username123

    • arn:aws:quicksight:us-west-2:111122223333:user/namespace-123/username123

[RegisterUser] を使用する際は、各ユーザーのアクセスレベルを選択します。ユーザーのユーザー名がセキュリティコホートのいずれかに割り当てられると、コンソールおよび API へのアクセスが制限されます。QuickSight を使用するユーザーは、次のように単一のアクセスレベルを持つことができます。

  • 閲覧者アクセス、ダッシュボード読み込みのみの受信者用

  • 作成者アクセス、アナリストおよびダッシュボードデザイナー用

  • 管理者アクセス、QuickSight 管理者用

ある名前空間の既存のユーザーを別の名前空間に移行するには

  1. QuickSight ユーザーおよびグループ API オペレーションを使用して、別の名前空間に転送するユーザーを特定します。詳細については、Amazon QuickSight API リファレンスAPI Operations to Controlling Access を参照してください。

  2. [RegisterUser] API オペレーションを使用して、新しい名前空間にユーザーを作成します。同じ AWS リージョン 内であっても、異なる名前空間で同じユーザー名を再利用することができます。ただし、名前空間内では、ユーザー名は一意です。

    名前空間ユーザーが新しい AWS リージョン で QuickSight コンソールまたは API の使用を開始した場合でも、そのユーザーは、自分が追加された名前空間に制約されます。各名前空間は、アイデンティティプロバイダーのユーザーディレクトリを表します。つまり、QuickSight が構成されているプライマリ AWS リージョン で生成されています。ただし、ユーザーディレクトリは AWS アカウントにグローバルに反映されるため、ユーザーは、QuickSight を使用しているすべての AWS リージョン から名前空間にアクセスできます。

  3. 新しい名前空間ユーザーが、必要とするアセットとリソースのアクセス許可を特定するには、各種のアセット (ダッシュボード、データセットなど) に関連付けられた QuickSight API オペレーションを使用します。詳細については、Amazon QuickSight API リファレンスQuickSight API Operations to Controlling Access を参照してください。

    たとえば、ダッシュボードに焦点を当てているとします。ListDashboards を使用して、AWS アカウントのすべてのダッシュボード ID を一覧表示します。次に、これらのダッシュボードにアクセスできるユーザーまたはグループを特定するために、ListDashboards によって生成された結果セットで DescribeDashboardPermissions を使用します。ダッシュボードの特定のバージョンを識別する必要がある場合は、ListDashboardVersions を使用します。また、データソースおよびデータセット API オペレーションを使用して、ダッシュボードで使用されるデータの場所に関する情報を収集することもできます。詳細については、Amazon QuickSight API リファレンスQuickSight API Operations to Control Data Resources を参照してください。

    API 応答出力のフィルタリングの詳細については、使用言語の SDK ドキュメントを参照してください。AWS Command Line Interface ( AWS CLI ) 関連情報については、AWS Command Line Interfaceユーザーガイドの「AWS CLI からのコマンド出力の制御」を参照してください。

  4. QuickSight アセットおよびリソースで、ソース名前空間ユーザーが各アセットに対して持っているアクセス許可をコピーします。次に、UpdateDashboardPermissions などを使用して、ターゲット名前空間ユーザーに同じアクセス許可を付与します。各アセットタイプには、ユーザーが使用する必要のあるアクセス許可を制御するための独自の API オペレーションの個別セットがあります。詳細については、Amazon QuickSight API リファレンスQuickSight API Operations for Asset and Resource Permissions を参照してください。

  5. ユーザーとアクセス許可の追加が終了したら、ユーザー受け入れテストにしばらく時間をかけることをお勧めします。これにより、すべてのユーザーが新しい名前空間を正常に使用できるようになります。また、新しい名前空間ですべてのアセットとリソースにアクセスできるようになります。

    元のユーザー名が不要になったことを確認したら、元の名前空間でそのユーザーのアクセス許可を非推奨にすることができます。最後に、ユーザーの準備ができたら、ソース名前空間の未使用のグループとユーザー名を削除します。この操作は、ユーザーが以前にアクティブだった各 AWS リージョン で行います。