のリソースコントロールポリシー AWS KMS - AWS Key Management Service

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

のリソースコントロールポリシー AWS KMS

リソースコントロールポリシー (RCPs) は、組織内の AWS リソースに対して予防的コントロールを適用するために使用できる組織ポリシーの一種です。RCPs は、リソースへの外部アクセスを大規模 AWS に一元的に制限するのに役立ちます。RCPs サービスコントロールポリシーを補完します (SCPs)。SCPs は、組織内のIAMロールとユーザーに対する最大アクセス許可を一元的に設定するために使用できますが、 RCPsは、組織内の AWS リソースに対する最大アクセス許可を一元的に設定するために使用できます。

RCPs を使用して、組織内のカスタマーマネージドKMSキーに対するアクセス許可を管理できます。RCPs カスタマーマネージドキーへのアクセス許可を付与するには、 だけでは不十分です。によって付与されるアクセス許可はありませんRCP。は、ID が影響を受けるアカウントのリソースに対して実行できるアクションに対するアクセス許可ガードレールRCPを定義するか、制限を設定します。管理者は、実際にアクセス許可を付与するために、IAMロールやユーザー、またはキーポリシーに ID ベースのポリシーをアタッチする必要があります。

注記

組織内のリソースコントロールポリシーは、 には適用されませんAWS マネージドキー

AWS マネージドキー はサービスによってユーザーに代わって作成、管理、使用されるため AWS 、アクセス許可を変更、管理することはできません。

詳細はこちら

  • の詳細についてはRCPs、「 ユーザーガイド」の「リソースコントロールポリシー」を参照してください。 AWS Organizations

  • 例を含む RCPsの定義方法の詳細については、「 ユーザーガイド」のRCP「構文」を参照してください。 AWS Organizations

次の例は、 を使用してRCP、外部プリンシパルが組織内のカスタマーマネージドキーにアクセスできないようにする方法を示しています。このポリシーは単なるサンプルであり、独自のビジネスとセキュリティのニーズに合わせてカスタマイズする必要があります。例えば、ビジネスパートナーによるアクセスを許可するようにポリシーをカスタマイズできます。詳細については、「データ境界ポリシーの例リポジトリ」を参照してください。

注記

このkms:RetireGrantアクセス許可はRCP、 Action要素でワイルドカードとしてアスタリスク (*) が指定されていても、 では有効ではありません。

に対するアクセス許可の決定方法の詳細については、kms:RetireGrant「」を参照してくださいグラントの使用停止と取り消し

{ "Version": "2012-10-17", "Statement": [ { "Sid": "RCPEnforceIdentityPerimeter", "Effect": "Deny", "Principal": "*", "Action": "kms:*", "Resource": "*", "Condition": { "StringNotEqualsIfExists": { "aws:PrincipalOrgID": "my-org-id" }, "Bool": { "aws:PrincipalIsAWSService": "false" } } } ] }

次の例ではRCP、 AWS サービスプリンシパルがカスタマーマネージドKMSキーにアクセスできるのは、リクエストが組織から発信されたときのみです。このポリシーは、 aws:SourceAccount が存在するリクエストにのみコントロールを適用します。これにより、 の使用を必要としないサービス統合aws:SourceAccountは影響を受けません。aws:SourceAccount がリクエストコンテキストに存在する場合、Null条件は に評価されtrueaws:SourceOrgIDキーが強制されます。

混乱した代理問題の詳細については、IAM「 ユーザーガイド」の「混乱した代理問題」を参照してください。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "RCPEnforceConfusedDeputyProtection", "Effect": "Deny", "Principal": "*", "Action": "kms:*", "Resource": "*", "Condition": { "StringNotEqualsIfExists": { "aws:SourceOrgID": "my-org-id" }, "Bool": { "aws:PrincipalIsAWSService": "true" }, "Null": { "aws:SourceAccount": "false" } } } ] }