翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
サービス間の混乱した代理の防止
混乱した副問題は、アクションを実行する許可を持たないエンティティが、より特権のあるエンティティにアクションを実行するように強制できるセキュリティの問題です。AWS では、サービス間でのなりすましが、混乱した代理問題を生じさせることがあります。サービス間でのなりすましは、1 つのサービス (呼び出し元サービス) が、別のサービス (呼び出し対象サービス) を呼び出すときに発生する可能性があります。呼び出し元サービスは、本来ならアクセスすることが許可されるべきではない方法でその許可を使用して、別の顧客のリソースに対する処理を実行するように操作される場合があります。これを防ぐため、AWS では、アカウント内のリソースへのアクセス権が付与されたサービスプリンシパルですべてのサービスのデータを保護するために役立つツールを提供しています。
リソースポリシーで aws:SourceArn
および aws:SourceAccount
のグローバル条件コンテキストキーを使用して、AWS DataSync が別のサービスに付与する許可をそのリソースに制限することをお勧めします。同じポリシーステートメントでこれらのグローバル条件コンテキストキーの両方を使用し、アカウント ID にaws:SourceArn
の値が含まれていない場合、aws:SourceAccount
値と aws:SourceArn
値の中のアカウントには、同じアカウント ID を使用する必要があります。クロスサービスのアクセスにリソースを 1 つだけ関連付けたい場合は、aws:SourceArn
を使用します。クロスサービスが使用できるように、aws:SourceAccount
アカウント内の任意のリソースを関連づけたい場合は、を使用します。
の値には、IAM DataSync DataSync ロールを引き受けることができる場所 ARNaws:SourceArn
を含める必要があります。
混乱した代理問題から保護するための最も効果的な方法は、リソースの完全な ARNaws:SourceArn
を指定してキーを使用することです。完全な ARN が不明な場合や、複数のリソースを指定する場合には、未知部分にワイルドカード文字 (*
) を使用します。ここでは、その方法についての例をいくつか紹介します DataSync。
-
DataSync トラストポリシーを既存の場所に限定するには、ロケーション全体の ARN をポリシーに含めてください。 DataSync は、その特定の場所を処理する場合にのみ IAM ロールを引き受けます。
-
の Amazon S3 ロケーションを作成するとき DataSync、そのロケーションの ARN はわかりません。このようなシナリオでは、
aws:SourceArn
キーには次の形式を使用してください。arn:aws:datasync:
。 この形式は、パーティション (us-east-2
:123456789012
:*aws
)、アカウント ID、およびリージョンを検証します。
次の完全な例では、「で混乱した代理」問題を防ぐために、aws:SourceArn
aws:SourceAccount
信頼ポリシーでおよびグローバル条件コンテキストキーを使用する方法を示します DataSync。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "datasync.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "
123456789012
" }, "StringLike": { "aws:SourceArn": "arn:aws:datasync:us-east-2
:123456789012
:*" } } } ] }
aws:SourceArn
aws:SourceAccount
およびグローバル条件コンテキストキーの使用方法を示すその他のポリシー例については DataSync、以下のトピックを参照してください。