AWS Organizations を AWS の他のサービスと併用する - AWS Organizations

AWS Organizations を AWS の他のサービスと併用する

信頼されたアクセスを使用して、指定したサポートされている AWS サービス (信頼されたサービスと呼ばれる) を有効にできます。これにより、組織とそのアカウントのタスクを代理で実行できるようになります。このためには、信頼されたサービスにアクセス許可を付与する必要がありますが、IAM ユーザーまたはロールのアクセス許可に影響はありません。アクセスを有効にすると、信頼されたサービスは、組織の各アカウントにサービスにリンクされたロールと呼ばれる IAM ロール を必要なときに作成できるようになります。このロールには、信頼されたサービスを使用して、該当サービスのドキュメントに記載されているタスクの実行を可能にするアクセス許可ポリシーが含まれています。これにより、信頼されたサービスを使用して、ユーザーに代わって組織のアカウントで管理する設定や構成の詳細を指定できます。信頼されたサービスは、アカウントに対して管理アクションを実行する必要がある場合にのみ、サービスにリンクされたロールを作成します。必ずしも組織のすべてのアカウントで管理アクションを実行する必要はありません。

重要

信頼されたアクセスの有効化と無効化には、信頼されたサービスのコンソールか、その AWS CLI または API のオペレーションのみを使用することを強くお勧めします。これにより、信頼できるアクセスの有効化に必要なすべての初期化処理が信頼できるサービスによって実行可能になります。例えば、必要なリソースの作成や、信頼できるアクセスの無効にする際のリソースのクリーンアップなどです。

信頼されたサービスを使用し、信頼されたサービスによる組織へのアクセスを有効または無効にする方法については、AWS Organizations で使用できる AWS のサービス の [Supports Trusted Access] (信頼されたアクセスをサポート) 列の [Learn more] (詳細はこちら) リンクを参照してください。

Organizations コンソール、CLI コマンド、API オペレーションを使用してアクセスを無効にした場合の結果は次のようになります。

  • そのサービスでは、サービスにリンクされたロールを組織のアカウントに作成できなくなります。つまり、組織の新しいアカウントに対するオペレーションをサービスがユーザーに代わって実行できなくなります。そのサービスによる AWS Organizations のクリーンアップが完了するまでは、古いアカウントに対するオペレーションは引き続き実行可能です。

  • そのサービスでは、ロールにアタッチされている IAM ポリシーによって明示的に許可されていない限り、組織のメンバーアカウントのタスクを実行できなくなります。これには、メンバーアカウントから管理アカウントまたは委任管理者アカウント (該当する場合) へのデータ集約が含まれます。

  • 一部のサービスはこれを検出し、統合に関連する残りのデータやリソースをクリーンアップします。一方、組織へのアクセスを停止するものの、統合を再び有効にする場合のために履歴データと設定を残しておくサービスもあります。

そうしたサービスであっても、コンソールまたはコマンドを使用して統合を無効にすると、その統合以外に用途のないリソースがクリーンアップされるようになります。組織のアカウントのリソースをクリーンアップする仕組みは、サービスによって異なります。詳しくは、AWS の他のサービスのドキュメントを参照してください。

信頼されたアクセスを有効にするために必要なアクセス許可

信頼されたアクセスを使用するには、2 つのサービス (AWS Organizations と信頼されたサービス) のアクセス権限が必要です。信頼されたアクセスを有効にするには、次のいずれかのシナリオを選択します。

  • AWS Organizations と信頼されたサービスの両方にアクセス許可がある認証情報が設定されている場合、信頼されたサービスによって提供されているツール (コンソールまたは AWS CLI) を使用してアクセスを有効化します。これにより、そのサービスには、ユーザーに代わって AWS Organizations で信頼されたアクセスを有効にすること、および組織でのオペレーションに必要なリソースを作成することが可能になります。

    これらの認証情報に必要な最小限のアクセス権限は次のとおりです。

    • organizations:EnableAWSServiceAccess。また、このオペレーションに organizations:ServicePrincipal 条件キーを使用し、承認されたサービスプリンシパル名のリストに対してオペレーションが行うリクエストを制限することもできます。詳細については、条件キー を参照してください。

    • organizations:ListAWSServiceAccessForOrganization - AWS Organizations コンソールを使用する場合は必須。

    • 信頼されたサービスで必要な最小限のアクセス権限は、サービスによって異なります。詳細については、信頼されたサービスのドキュメントを参照してください。

  • AWS Organizations のアクセス権限を含む認証情報が設定されているユーザーと、信頼されたサービスのアクセス権限を含む認証情報が設定されているユーザーがいる場合は、以下のステップをこの順序で実行します。

    1. AWS Organizations のアクセス権限を含む認証情報がユーザーに設定されている場合は、AWS Organizations コンソール、AWS CLI、または AWS SDK を使用して、信頼されたサービスの信頼されたアクセスを有効にします。これにより、次のステップ (ステップ 2) を実行すると、組織の必要な設定を実行するためのアクセス権限が他のサービスに付与されます。

      AWS Organizations の最小限のアクセス権限は次のとおりです。

      • organizations:EnableAWSServiceAccess

      • organizations:ListAWSServiceAccessForOrganization - AWS Organizations コンソールを使用する場合のみ必須

      AWS Organizations で信頼されたアクセスを有効にする特定のステップについては、「信頼されたアクセスを有効または無効にする方法」を参照してください。

    2. 信頼されたサービスのアクセス許可を含む認証情報をユーザーに設定すると、そのサービスで AWS Organizations を操作できます。これにより、信頼されたサービスを使用して、組織で操作するために必要なリソースの作成など、必要な初期化を行うようサービスに指示されます。詳細については、サービス固有の手順 (AWS Organizations で使用できる AWS のサービス) を参照してください。

信頼されたアクセスを無効にするために必要なアクセス許可

信頼されたサービスを使用して、組織またはそのアカウントで操作する必要がなくなった場合は、次のいずれかのシナリオを選択します。

重要

サービスへの信頼されたアクセスを無効にすると、適切なアクセス権限を含むユーザーやロールは、そのサービスを使用できなくなります。ユーザーとロールによる特定の AWS サービスへのアクセスを完全にブロックするには、そのアクセスを付与する IAM 許可を削除するか、AWS Organizations のサービスコントロールポリシー (SCP) を使用します

SCP はメンバーアカウントにのみ適用できます。SCP は管理アカウントには適用されません。管理アカウントではサービスを実行しないことをお勧めします。代わりに、SCP を使用してセキュリティを制御できるメンバーアカウントで実行します。

  • AWS Organizations と信頼されたサービスの両方にアクセス許可がある認証情報が設定されている場合には、信頼されたサービスで利用できるツール (コンソールまたは AWS CLI) を使用してアクセスを無効化します。無効になると、サービスは、ユーザーの代わりに、不要になったリソースを削除し、AWS Organizations のサービスの信頼されたアクセスを無効にしてクリーンアップします。

    これらの認証情報に必要な最小限のアクセス権限は次のとおりです。

    • organizations:DisableAWSServiceAccess。また、このオペレーションに organizations:ServicePrincipal 条件キーを使用し、承認されたサービスプリンシパル名のリストに対してオペレーションが行うリクエストを制限することもできます。詳細については、条件キー を参照してください。

    • organizations:ListAWSServiceAccessForOrganization - AWS Organizations コンソールを使用する場合は必須。

    • 信頼されたサービスで必要な最小限のアクセス権限は、サービスによって異なります。詳細については、信頼されたサービスのドキュメントを参照してください。

  • AWS Organizations のアクセス権限を含む認証情報と、信頼されたサービスのアクセス権限を含む認証情報が異なる場合は、以下のステップをこの順序で実行します。

    1. まず、信頼されたサービスのアクセス権限を含むユーザーを使用して、このサービスを使用するアクセスを無効にします。これにより、信頼されたアクセスに必要なリソースを削除してクリーンアップするよう、信頼されたサービスに指示されます。詳細については、サービス固有の手順 (AWS Organizations で使用できる AWS のサービス) を参照してください。

    2. これで、AWS Organizations のアクセス権限を含むユーザーは、AWS Organizations コンソール、AWS CLI、または AWS SDK を使用して、信頼されたサービスのアクセスを無効にできるようになります。これにより、信頼されたサービスのアクセス許可は、組織やそのアカウントより削除されます。

      AWS Organizations の最小限のアクセス権限は次のとおりです。

      • organizations:DisableAWSServiceAccess

      • organizations:ListAWSServiceAccessForOrganization - AWS Organizations コンソールを使用する場合のみ必須

      AWS Organizations で信頼されたアクセスを無効にする特定のステップについては、信頼されたアクセスを有効または無効にする方法を参照してください。

信頼されたアクセスを有効または無効にする方法

AWS Organizations のアクセス許可のみ付与されており、他の AWS サービスの管理者の代わりに、組織への信頼されたアクセスを有効または無効にする場合は、次の手順を使用します。

重要

信頼されたアクセスの有効化と無効化には、信頼されたサービスのコンソールか、その AWS CLI または API のオペレーションのみを使用することを強くお勧めします。これにより、信頼できるアクセスの有効化に必要なすべての初期化処理が信頼できるサービスによって実行可能になります。例えば、必要なリソースの作成や、信頼できるアクセスの無効にする際のリソースのクリーンアップなどです。

信頼されたサービスを使用し、信頼されたサービスによる組織へのアクセスを有効または無効にする方法については、AWS Organizations で使用できる AWS のサービス の [Supports Trusted Access] (信頼されたアクセスをサポート) 列の [Learn more] (詳細はこちら) リンクを参照してください。

Organizations コンソール、CLI コマンド、API オペレーションを使用してアクセスを無効にした場合の結果は次のようになります。

  • そのサービスでは、サービスにリンクされたロールを組織のアカウントに作成できなくなります。つまり、組織の新しいアカウントに対するオペレーションをサービスがユーザーに代わって実行できなくなります。そのサービスによる AWS Organizations のクリーンアップが完了するまでは、古いアカウントに対するオペレーションは引き続き実行可能です。

  • そのサービスでは、ロールにアタッチされている IAM ポリシーによって明示的に許可されていない限り、組織のメンバーアカウントのタスクを実行できなくなります。これには、メンバーアカウントから管理アカウントまたは委任管理者アカウント (該当する場合) へのデータ集約が含まれます。

  • 一部のサービスはこれを検出し、統合に関連する残りのデータやリソースをクリーンアップします。一方、組織へのアクセスを停止するものの、統合を再び有効にする場合のために履歴データと設定を残しておくサービスもあります。

そうしたサービスであっても、コンソールまたはコマンドを使用して統合を無効にすると、その統合以外に用途のないリソースがクリーンアップされるようになります。組織のアカウントのリソースをクリーンアップする仕組みは、サービスによって異なります。詳しくは、AWS の他のサービスのドキュメントを参照してください。

AWS Management Console

信頼されたサービスのアクセスを有効にするには

  1. AWS Organizations コンソールにサインインします。組織の管理アカウントで、IAM ユーザーとしてサインインするか、IAM ロールを引き受けるか、ルートユーザーとしてサインインする (推奨されません) 必要があります。

  2. サービスページで、有効にするサービスの行を探し、その名前を選択します。

  3. [Enable trusted access (信頼されたアクセスを有効にする)] を選択します。

  4. 確認ダイアログボックスで、[Show the option to enable trusted access] (信頼されたアクセスを有効にするオプションを表示する) チェックボックスをオンにし、ボックスに「enable」と入力してから、[Enable trusted access] (信頼されたアクセスを有効にする) を選択します。

  5. アクセスを有効にする場合は、他のサービスで AWS を操作できるようになったことを他の AWS Organizations サービスの管理者に伝えます。

信頼されたサービスのアクセスを無効にするには

  1. AWS Organizations コンソールにサインインします。組織の管理アカウントで、IAM ユーザーとしてサインインするか、IAM ロールを引き受けるか、ルートユーザーとしてサインインする (推奨されません) 必要があります。

  2. サービスページで、無効にするサービスの行を探し、その名前を選択します。

  3. もう一方のサービスの管理者から、サービスが無効になり、そのリソースのクリーンアップが完了したことが知らされるまで待ちます。

  4. 確認ダイアログボックスで、ボックスに「disable」と入力してから、[Disable trusted access] (信頼されたアクセスを無効にする) を選択します。

AWS CLI, AWS API

信頼されたサービスのアクセスを有効または無効にするには

サービスへの信頼されたアクセスを有効または無効にするには、次の AWS CLI コマンドまたは API オペレーションを使用できます。

AWS Organizations とサービスにリンクされたロール

AWS Organizations では、サービスにリンクされた IAM ロールを使用して、信頼されたサービスが組織のメンバーアカウントで自動的にタスクを実行できるようにします。信頼されたサービスを設定して、組織との統合のためにそのサービスを承認すると、サービスにリンクされたロールをメンバーアカウントに作成するようにそのサービスから AWS Organizations にリクエストできます。信頼されたサービスによって必要に応じて非同期的に行われますが、組織のすべてのアカウントで必ずしも同時に必要とは限りません。サービスにリンクされたロールには IAM 許可が事前定義されており、信頼されたサービスは、そのアカウント内の特定のタスクだけを実行する許可が与えられます。一般的に、サービスにリンクされたロールはすべて AWS によって管理されます。つまり、通常、ロールまたはアタッチされたポリシーを変更することはできません。

こうした変更を行えるようにするため、組織内にアカウントを作成するとき、または組織への既存のアカウントの招待が承諾されたときに、AWS Organizations は、サービスにリンクされたロール (AWSServiceRoleForOrganizations) を使用してメンバーアカウントをプロビジョニングします。このロールは、AWS Organizations サービス自体のみ引き受けることができます。また、このロールに含まれるアクセス許可により、AWS Organizations は、サービスにリンクされたロールを他の AWS サービス用にも作成できるようになります。このサービスにリンクされたロールは、すべての組織に存在します。

組織で一括請求機能のみ有効になっている場合、サービスにリンクされたロール (AWSServiceRoleForOrganizations) は使用されないため、削除できます。ただし、推奨はされません。組織のすべての機能を後に有効にする場合はこのロールが必要になるため、復元する必要があります。次のチェックは、すべての機能を有効にするプロセスを開始するときに実行されます。

  • 組織に参加するように招待された各メンバーアカウント - アカウント管理者には、すべての機能を有効にすることへの同意を求めるリクエストが送信されます。サービスにリンクされたロール (AWSServiceRoleForOrganizations) が存在しない場合に適切にリクエストに同意するには、organizations:AcceptHandshake 許可および iam:CreateServiceLinkedRole 許可の両方がアカウント管理者に必要です。AWSServiceRoleForOrganizations ロールが既に存在する場合、管理者がリクエストに同意するには、organizations:AcceptHandshake アクセス権限のみが管理者に必要です。管理者がリクエストに同意すると、サービスにリンクされたロールが存在しない場合でも、AWS Organizations によって自動的に作成されます。

  • 組織に作成された各メンバーアカウント - サービスにリンクされたロールの再作成リクエストがアカウント管理者に送信されます。(メンバーアカウントの管理者には、すべての機能を有効にするリクエストが届きません。これは、管理アカウント (旧称は「マスターアカウント」) の管理者が、作成されたメンバーアカウントの所有者と見なされるためです)。サービスにリンクされたロールは、メンバーアカウント管理者がリクエストに同意すると AWS Organizations によって作成されます。ハンドシェイクを適切に承諾するには、organizations:AcceptHandshake アクセス権限と iam:CreateServiceLinkedRole アクセス権限の両方が管理者に必要です。

組織内のすべての機能を有効にすると、サービスにリンクされたロール AWSServiceRoleForOrganizations はどのアカウントからも削除できなくなります。

重要

AWS Organizations の SCP がサービスにリンクされたロールに影響を及ぼすことはありません。これらのロールは、SCP 制限の対象外であるためです。