翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
サービス間での不分別な代理処理の防止
混乱した代理問題は、アクションを実行するためのアクセス許可を持たないエンティティが、より特権のあるエンティティにアクションの実行を強制できてしまう場合に生じる、セキュリティ上の問題です。では AWS、サービス間のなりすましにより、混乱した代理問題が発生する可能性があります。サービス間でのなりすましは、1 つのサービス (呼び出し元サービス) が、別のサービス (呼び出し対象サービス) を呼び出すときに発生する可能性があります。呼び出し元サービスは、本来ならアクセスすることが許可されるべきではない方法でその許可を使用して、別のお客様のリソースに対する処理を実行するように操作される場合があります。これを防ぐために、 は、アカウント内のリソースへのアクセス権が付与されたサービスプリンシパルを持つすべてのサービスのデータを保護するのに役立つツール AWS を提供します。
リソースポリシーで aws:SourceArn
および aws:SourceAccount
グローバル条件コンテキストキーを使用して、 がリソースに別のサービス AWS Backup に付与するアクセス許可を制限することをお勧めします。両方のグローバル条件コンテキストキーを同じポリシーステートメントで使用する場合は、aws:SourceAccount
値と、aws:SourceArn
値に含まれるアカウントが、同じアカウント ID を示している必要があります。
を使用してユーザーに代わって Amazon AWS Backup SNS トピック AWS Backup を発行する場合、 の値はボールトaws:SourceArn
である必要があります。 Amazon SNS
混乱した代理問題から保護するための最も効果的な方法は、リソースの完全な ARN を指定して aws:SourceArn
グローバル条件コンテキストキーを使用することです。リソースの完全な ARN が不明な場合や、複数のリソースを指定する場合は、aws:SourceArn
グローバルコンテキスト条件キーを使用して、ARN の未知部分をワイルドカード (*
) で表します。例えば、arn:aws::
です。servicename
::123456789012
:*
次のポリシー例は、 で aws:SourceArn
および aws:SourceAccount
グローバル条件コンテキストキーを使用して、混乱した代理問題 AWS Backup を防ぐ方法を示しています。このポリシーは、サービスプリンシパルがバックアップボールトで AWS アカウント 123456789012 に代わって動作している場合にのみ、サービスプリンシパル backup-storage.amazonaws.com に KMS アクションを実行する機能を付与します。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "Allow root all KMS access", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:root" }, "Action": "kms:*", "Resource": "*" }, { "Sid": "Allow Backup Storage SPN backup related operations on Key", "Effect": "Deny", "Principal": { "Service": "backup-storage.amazonaws.com" }, "Action": [ "kms:Decrypt", "kms:RetireGrant", "kms:GenerateDataKey" ], "Resource": "*", "Condition": { "ForAllValues:StringNotLike": { "aws:SourceArn": ["arn:aws:backup:us-east-1:123456789012:backup-vault:*"], "aws:SourceAccount": ["123456789012"] } } } ] }