組織と OU に KMS キーの使用を許可する - Amazon Elastic Compute Cloud

組織と OU に KMS キーの使用を許可する

暗号化されたスナップショットによってバックアップされた AMI を共有する場合、組織または OU がスナップショットの暗号化に使用された AWS KMS keys の使用を許可する必要もあります。

aws:PrincipalOrgID および aws:PrincipalOrgPaths キーを使用して、リクエストを行っているプリンシパルの AWS Organizations パスをポリシー内のパスと比較します。そのプリンシパルは、ユーザー、IAM ロール、フェデレーションユーザー、または AWS アカウント ルートユーザーです。ポリシーでは、この条件キーによって、リクエスタが AWS Organizations で指定された組織ルートまたは OU 内のアカウントメンバーであることが保証されます。その他の条件ステートメントの例については、「IAM ユーザーガイド」の「aws:PrincipalOrgID」と「aws:PrincipalOrgPaths」を参照してください。

キーポリシーの編集の詳細については、「AWS Key Management Service 開発者ガイド」の「他のアカウントのユーザーに KMS キーの使用を許可する」を参照してください。

組織または OU に KMS キーを使用するアクセス権限を付与するには、次のステートメントをキーポリシーに追加します。

{ "Sid": "Allow access for organization root", "Effect": "Allow", "Principal": "*", "Action": [ "kms:Describe*", "kms:List*", "kms:Get*", "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*" ], "Resource": "*", "Condition": { "StringEquals": { "aws:PrincipalOrgID": "o-123example" } } }

KMS キーを複数の OU と共有するには、次の例のようなポリシーを使用します。

{ "Sid": "Allow access for specific OUs and their descendants", "Effect": "Allow", "Principal": "*", "Action": [ "kms:Describe*", "kms:List*", "kms:Get*", "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*" ], "Resource": "*", "Condition": { "StringEquals": { "aws:PrincipalOrgID": "o-123example" }, "ForAnyValue:StringLike": { "aws:PrincipalOrgPaths": [ "o-123example/r-ab12/ou-ab12-33333333/*", "o-123example/r-ab12/ou-ab12-22222222/*" ] } } }