組織内のすべての機能の有効化 - AWS Organizations

組織内のすべての機能の有効化

AWS Organizations には、2 つの利用可能な機能セットがあります。

  • すべての機能 - この機能セットを利用して AWS Organizations を使用することをお勧めします。このセットには、一括請求 (コンソリデーティッドビリング) 機能が含まれています。組織を作成する際、デフォルトではすべての機能が有効化されています。すべての機能が有効になっていると、サポートされている AWS サービスとの統合や、組織管理ポリシーなど、高度なアカウント管理機能が AWS Organizations で利用できます。

  • 一括請求 (コンソリデーティッドビリング) 機能 - この機能サブセットはすべての組織でサポートされます。これによって組織内のアカウント管理を一元化するために使用できる基本的な管理ツールが提供されます。

一括請求機能のみを使用して組織を作成する場合、後ですべての機能を有効にできます。このページでは、すべての機能を有効にするプロセスについて説明します。

すべての機能を有効にする前に

一括請求のみをサポートする組織からすべての機能をサポートする機能に変更する前に、以下の点に注意してください。

  • すべての機能を有効にするプロセスを開始すると、AWS Organizations は、組織に参加するように招待されたすべてのメンバーアカウントにリクエストを送信します。すべての招待されたアカウントは、すべての機能を有効にするリクエストを受け入れて承認する必要があります。その場合にのみ、プロセスを完了して組織内のすべての機能を有効にします。アカウントがリクエストを拒否した場合は、組織からアカウントを削除するか、リクエストを再送信する必要があります。すべての機能を有効にするプロセスを完了する前に、リクエストを受け入れる必要があります。 を使用した作成済みAWS Organizationsのアカウントは、追加のコントロールを承認する必要がないため、リクエストを取得しません。

  • 組織へのアカウントの招待は、すべての機能が有効になっている状態でも継続できます。招待されたアカウントの所有者には、招待されている組織で有効なのは一括請求 (コンソリデーティッドビリング) だけか、それともすべての機能かが、招待時に通知されます。

    • すべての機能の有効化プロセスの進行中にアカウントを招待した場合、招待には、組織はすべての機能が有効なものとして記載されます。アカウントが招待を承諾する前に、すべての機能の有効化プロセスをキャンセルすると、その招待はキャンセルされます。一括請求 (コンソリデーティッドビリング) 機能のみの組織として、再度招待する必要があります。

    • すべての機能の有効化プロセスの開始にアカウントを招待し、招待が未承諾の場合、その招待はプロセスの開始時にキャンセルされます。これは、招待には一括請求 (コンソリデーティッドビリング) 機能のみの組織であると記載されているためです。すべての機能が有効になっている組織として、再度招待する必要があります。

  • 組織内のアカウントの作成も継続できます。このプロセスがこうした変更の影響を受けることはありません。

  • また、AWS Organizations はすべてのアカウントに AWSServiceRoleForOrganizations という名前のサービスにリンクされたロールがあることを検証します。すべての機能を有効にするには、このロールがすべてのアカウントで必須です。招待したアカウントでこのロールが削除されている場合は、すべての機能を有効にするために招待を承諾するとロールが再作成されます。AWS Organizations を使用して作成されたアカウントでこのロールが削除されている場合は、このロールを再作成するための招待がアカウントに送信されます。組織ですべての機能を有効にする処理を完了するには、これらの招待をすべて受諾する必要があります。

  • すべての機能を有効にすると SCP を使用できるようになるため、アカウントの管理者が組織、組織単位、あるいはアカウントに SCP をアタッチすることの影響を理解していることを確認してください。SCP は、影響を受けるアカウントでユーザーだけではなく管理者が実行できる操作を制限することができます。例えば、管理アカウントは、メンバーアカウントが組織を離れるのを禁止する SCP を適用することができます。

  • 管理アカウントが SCP の影響を受けることはありません。SCP を適用して、管理アカウントのユーザーとロールの機能を制限することはできません。SCP は、メンバーアカウントのみに影響します。

  • 一括請求からすべての機能への移行は一方向です。すべての機能を有効にした組織を、統合された一括請求機能のみに切り替えることはできません。

  • (非推奨) 組織で一括請求 (コンソリデーティッドビリング) 機能のみが有効になっている場合、メンバーアカウントの管理者は、AWSServiceRoleForOrganizations という名前のサービスにリンクされたロールを削除することができます。ただし、その後に組織ですべての機能を有効にすることにした場合、このロールは必須となります。そのため、招待を承諾してすべての機能の有効化に同意したすべてのアカウントに、このロールが再作成されます。AWS Organizations でこのロールを使用する方法については、AWS Organizations とサービスにリンクされたロールを参照してください。

すべての機能を有効にするプロセスの開始

組織の管理アカウントにサインインすると、すべての機能の有効化プロセスを開始できます。そのためには、以下の手順を完了します。

最小アクセス許可

組織内のすべての機能を有効にするには、次のアクセス権限が必要です。

  • organizations:EnableAllFeatures

  • organizations:DescribeOrganization - Organizations コンソールを使用する場合にのみ必要

AWS Management Console
招待されたメンバーアカウントに、組織内のすべての機能を有効にすることに同意するよう依頼する
  1. AWS Organizations コンソールにサイン・インします。組織の管理アカウントで、IAM ユーザーとしてサインインするか、IAM ロールを引き受けるか、ルートユーザーとしてサインインする (推奨されません) 必要があります。

  2. [設定] ページで、[すべての機能の有効化プロセスの開始] を選択します。

  3. [すべての機能の有効化] ページで、[すべての機能の有効化プロセスの開始] を選択して切り替えた後、一括請求機能のみの設定には戻れないことを理解していることを確認します。

    AWS Organizations は、組織のすべての招待 (未作成) アカウントに、組織内のすべての機能を有効にするための承認を求めるリクエストを送信します。AWS Organizations を使用して作成され、メンバーアカウント管理者によって AWSServiceRoleForOrganizations という名前のサービスにリンクされたロールが削除されたアカウントがある場合は AWS Organizations からそのアカウントにロールを再作成するリクエストが送信されます。

    コンソールには、招待されたアカウントのリクエストの承認ステータスリストが表示されます。

    ヒント

    後でこのページに戻るには、[Settings] (設定) ページを開き、[Request sent date] (リクエストの送信日) セクションで [View status] (ステータスを表示) を選択します。

  4. [Enable all features] (すべての機能の有効化) ページには、組織内の各アカウントに対するリクエストの現在のステータスが表示されます。リクエストに同意したアカウントのステータスは、[ACCEPTED] (承諾済み) と表示されます。まだ同意していないアカウントのステータスは、[OPEN] (オープン) と表示されます。

AWS CLI & AWS SDKs
招待されたメンバーアカウントに、組織内のすべての機能を有効にすることに同意するよう依頼する

組織のすべての機能を有効にするには、次のいずれかのコマンドを使用します。

  • AWS CLI: enable-all-features

    次のコマンドを実行すると、すべての機能の有効化プロセスが組織で開始されます。

    $ aws organizations enable-all-features { "Handshake": { "Id": "h-79d8f6f114ee4304a5e55397eEXAMPLE", "Arn": "arn:aws:organizations::123456789012:handshake/o-aa111bb222/enable_all_features/h-79d8f6f114ee4304a5e55397eEXAMPLE", "Parties": [ { "Id": "a1b2c3d4e5", "Type": "ORGANIZATION" } ], "State": "REQUESTED", "RequestedTimestamp": "2020-11-19T16:21:46.995000-08:00", "ExpirationTimestamp": "2021-02-17T16:21:46.995000-08:00", "Action": "ENABLE_ALL_FEATURES", "Resources": [ { "Value": "o-a1b2c3d4e5", "Type": "ORGANIZATION" } ] } }

    出力には、招待されたメンバーアカウントが同意する必要があるハンドシェイクの詳細が表示されます。

  • AWS SDK: EnableAllFeatures

メモ
  • リクエストがメンバーアカウントに送信されると、90 日のカウントダウンが開始されます。すべてのアカウントは期間内にリクエストを承認する必要があり、承認されない場合リクエストの有効期限が切れます。リクエストの有効期限が切れると、この試行に関連するすべてのリクエストがキャンセルされます。この場合はステップ 2 からやり直す必要があります。

  • すべての機能の有効化をリクエストすると、受理されていない既存のアカウントへの招待はキャンセルされます。

  • すべての機能の移行プロセス中でも、新しいアカウントの招待を開始したり、新しいアカウントを作成したりすることができます。

すべてのアカウントがリクエストを承認したら、プロセスを終了してすべての機能を有効化できます。組織に招待されたメンバーアカウントがない場合は、プロセスをすぐに終了することもできます。プロセスを終了するには、すべての機能を有効にするプロセスの最終処理 の手順を実施してください。

リクエストを承認してすべての機能を有効にする、またはサービスにリンクされたロールを再作成する

組織の招待されたメンバーアカウントのいずれかにサインインすると、管理アカウントからのリクエストを承認できます。アカウントが元は組織に参加するように招待されたものである場合、招待はすべての機能を有効にするものであり、必要に応じた AWSServiceRoleForOrganizations ロールの再作成の黙示的な承認を含んでいます。アカウントが AWS Organizations を使用して作成されたものであり AWSServiceRoleForOrganizations というサービスにリンクされたロールが削除されている場合、このロールの再作成専用の招待が送信されます。そのためには、以下の手順を完了します。

重要

次のすべての機能を有効にすると、組織の管理アカウントはメンバーアカウントにポリシーベースのコントロールを適用できます。これらのコントロールは、ユーザーはもちろん、管理者として自分がアカウント内で実行できることも制限できます。こうした制限により、アカウントが組織を離れるのを禁止することも可能になります。

最小アクセス許可

メンバーアカウントのすべての機能を有効にするリクエストを承認するには、次のアクセス権限が必要です。

  • organizations:AcceptHandshake

  • organizations:DescribeOrganization - Organizations コンソールを使用する場合にのみ必要

  • organizations:ListHandshakesForAccount - Organizations コンソールを使用する場合にのみ必要

  • iam:CreateServiceLinkedRole - メンバーアカウントで AWSServiceRoleForOrganizations ロールを再作成する必要がある場合にのみ必要

AWS Management Console
組織内のすべての機能を有効にするためのリクエストに同意するには
  1. AWS Organizations コンソールで、AWS Organizations コンソールにサインインします。メンバーアカウントで、IAM ユーザーとしてサインインするか、IAM ロールを引き受けるか、ルートユーザーとしてサインインする (推奨されません) 必要があります。

  2. 組織内のすべての機能のリクエストの受け入れがあなたのアカウントのものであることを確認した後、[Accept] を選択します。このページでは、組織内のすべてのアカウントがリクエストを承認し、管理アカウントの管理者がプロセスを終了するまで、プロセスが未完了であると表示されます。

AWS CLI & AWS SDKs
組織内のすべての機能を有効にするためのリクエストに同意するには

リクエストに同意するには、"Action": "APPROVE_ALL_FEATURES" でハンドシェイクを承諾する必要があります。

  • AWS CLI:

    次の例は、アカウントで使用可能なハンドシェイクを一覧表示する方法を示しています。"Id" の値 (出力の 4 行目) は、次のコマンドに必要な値です。

    $ aws organizations list-handshakes-for-account { "Handshakes": [ { "Id": "h-a2d6ecb7dbdc4540bc788200aEXAMPLE", "Arn": "arn:aws:organizations::123456789012:handshake/o-aa111bb222/approve_all_features/h-a2d6ecb7dbdc4540bc788200aEXAMPLE", "Parties": [ { "Id": "a1b2c3d4e5", "Type": "ORGANIZATION" }, { "Id": "111122223333", "Type": "ACCOUNT" } ], "State": "OPEN", "RequestedTimestamp": "2020-11-19T16:35:24.824000-08:00", "ExpirationTimestamp": "2021-02-17T16:35:24.035000-08:00", "Action": "APPROVE_ALL_FEATURES", "Resources": [ { "Value": "c440da758cab44068cdafc812EXAMPLE", "Type": "PARENT_HANDSHAKE" }, { "Value": "o-aa111bb222", "Type": "ORGANIZATION" }, { "Value": "111122223333", "Type": "ACCOUNT" } ] } ] }

    次の例では、前のコマンドのハンドシェイク ID を使用して、そのハンドシェイクを受け入れます。

    $ aws organizations accept-handshake --handshake-id h-a2d6ecb7dbdc4540bc788200aEXAMPLE { "Handshake": { "Id": "h-a2d6ecb7dbdc4540bc788200aEXAMPLE", "Arn": "arn:aws:organizations::123456789012:handshake/o-aa111bb222/approve_all_features/h-a2d6ecb7dbdc4540bc788200aEXAMPLE", "Parties": [ { "Id": "a1b2c3d4e5", "Type": "ORGANIZATION" }, { "Id": "111122223333", "Type": "ACCOUNT" } ], "State": "ACCEPTED", "RequestedTimestamp": "2020-11-19T16:35:24.824000-08:00", "ExpirationTimestamp": "2021-02-17T16:35:24.035000-08:00", "Action": "APPROVE_ALL_FEATURES", "Resources": [ { "Value": "c440da758cab44068cdafc812EXAMPLE", "Type": "PARENT_HANDSHAKE" }, { "Value": "o-aa111bb222", "Type": "ORGANIZATION" }, { "Value": "111122223333", "Type": "ACCOUNT" } ] } }
  • AWS SDK:

すべての機能を有効にするプロセスの最終処理

招待されたメンバーアカウントすべてが全機能を有効にするリクエストを承認する必要があります。組織に招待されたメンバーアカウントがない場合、[Enable all features progress] ページにはプロセスを終了できる緑色のバナーが表示されます。

最小アクセス許可

組織のすべての機能を有効にするためのプロセスを終了するには、次のアクセス権限が必要です。

  • organizations:AcceptHandshake

  • organizations:ListHandshakesForOrganization

  • organizations:DescribeOrganization - Organizations コンソールを使用する場合にのみ必要

AWS Management Console
すべての機能を有効にするプロセスを終了するには
  1. AWS Organizations コンソールにサイン・インします。組織の管理アカウントで、IAM ユーザーとしてサインインするか、IAM ロールを引き受けるか、ルートユーザーとしてサインインする (推奨されません) 必要があります。

  2. すべての機能の有効化のリクエストがすべての招待されたアカウントによって承認されると、[Settings] (設定) ページの上部に緑色のボックスが表示されます。緑色のボックスで、[Go to finalize] (終了処理に進む) を選択します。

  3. [Enable all features] (すべての機能の有効化) ページで [Finalize] (終了する) を選択し、確認ダイアログボックスでもう一度 [Finalize] (終了する) を選択します。

  4. 現在、組織は、すべての機能が有効になっています。

AWS CLI & AWS SDKs
すべての機能を有効にするプロセスを終了するには

プロセスを終了するには、["Action": "ENABLE_ALL_FEATURES"] でハンドシェイクを承諾する必要があります。

  • AWS CLI:

    $ aws organizations list-handshakes-for-organization { "Handshakes": [ { "Id": "h-43a871103e4c4ee399868fbf2EXAMPLE", "Arn": "arn:aws:organizations::123456789012:handshake/o-aa111bb222/enable_all_features/h-43a871103e4c4ee399868fbf2EXAMPLE", "Parties": [ { "Id": "a1b2c3d4e5", "Type": "ORGANIZATION" } ], "State": "OPEN", "RequestedTimestamp": "2020-11-20T08:41:48.047000-08:00", "ExpirationTimestamp": "2021-02-18T08:41:48.047000-08:00", "Action": "ENABLE_ALL_FEATURES", "Resources": [ { "Value": "o-aa111bb222", "Type": "ORGANIZATION" } ] } ] }

    次の例は、組織で使用可能なハンドシェイクを一覧表示する方法を示しています。"Id" の値 (出力の 4 行目) は、次のコマンドに必要な値です。

    $ aws organizations accept-handshake \ --handshake-id h-43a871103e4c4ee399868fbf2EXAMPLE { "Handshake": { "Id": "h-43a871103e4c4ee399868fbf2EXAMPLE", "Arn": "arn:aws:organizations::123456789012:handshake/o-aa111bb222/enable_all_features/h-43a871103e4c4ee399868fbf2EXAMPLE", "Parties": [ { "Id": "a1b2c3d4e5", "Type": "ORGANIZATION" } ], "State": "ACCEPTED", "RequestedTimestamp": "2020-11-20T08:41:48.047000-08:00", "ExpirationTimestamp": "2021-02-18T08:41:48.047000-08:00", "Action": "ENABLE_ALL_FEATURES", "Resources": [ { "Value": "o-aa111bb222", "Type": "ORGANIZATION" } ] } }
  • AWS SDK:

次のステップ: