本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
預防混淆代理人
混淆代理人問題屬於安全性議題,其中沒有執行動作許可的實體可以強制具有更多許可的實體執行該動作。在 中 AWS,跨服務模擬可能會導致混淆代理問題。在某個服務 (呼叫服務) 呼叫另一個服務 (被呼叫服務) 時,可能會發生跨服務模擬。可以操縱呼叫服務來使用其許可,以其不應有存取許可的方式對其他客戶的資源採取動作。為了防止這種情況, AWS 提供工具,協助您使用已授予您帳戶中資源存取權的服務主體來保護所有 服務的資料。
我們建議在資源政策中使用 aws:SourceArn
、aws:SourceOrgID
、 aws:SourceAccount
和 aws:SourceOrgPaths
全域條件內容索引鍵,以限制將另一個 服務提供給資源的許可。使用 僅aws:SourceArn
將一個資源與跨服務存取建立關聯。使用 aws:SourceAccount
讓該帳戶中的任何資源與跨服務使用相關聯。使用 aws:SourceOrgID
允許組織中任何帳戶的任何資源與跨服務使用相關聯。使用 aws:SourceOrgPaths
將 AWS Organizations 路徑中帳戶的任何資源與跨服務使用建立關聯。如需使用和了解路徑的詳細資訊,請參閱了解 AWS Organizations 實體路徑 。
防止混淆代理問題的最有效方法是使用包含完整資源ARN的aws:SourceArn
全域條件內容索引鍵。如果您不知道資源ARN的完整內容,或要指定多個資源,請將aws:SourceArn
全域內容條件索引鍵與萬用字元 (*
) 搭配使用,以處理 的未知部分ARN。例如:arn:aws:
。servicename
:*:123456789012
:*
如果該aws:SourceArn
值不包含帳戶 ID,例如 Amazon S3 儲存貯體ARN,您必須同時使用 aws:SourceAccount
和 aws:SourceArn
來限制許可。
若要大規模防範混淆代理人問題,請在資源型政策中使用 aws:SourceOrgID
或 aws:SourceOrgPaths
全域條件內容鍵和資源的組織 ID 或組織路徑。當您新增、移除或移動組織中的帳戶時,包含 aws:SourceOrgID
或 aws:SourceOrgPaths
鍵的政策將會自動包含正確的帳戶,您無需手動更新政策。
記錄的政策可授予對 CloudWatch Logs 的存取權,以將資料寫入 中的 Kinesis Data Streams 和 Firehose,步驟 1:建立目的地並步驟 2:建立目的地示範如何使用 aws:SourceArn global 條件內容索引鍵,以協助防止混淆的代理問題。