本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
AWS 全域條件索引鍵
AWS 定義全域條件金鑰,這是一組政策條件金鑰,適用於IAM用於存取控制的所有 AWS 服務。 AWS KMS 支援所有全域條件金鑰。您可以在 AWS KMS 金鑰政策和IAM政策中使用它們。
例如,您可以使用 aws:PrincipalArn全域條件金鑰,只有在條件金鑰值中的 Amazon Resource Name (KMS) 代表請求中的主體時,才允許存取 AWS KMS key ( 金鑰ARN)。若要在 中支援屬性型存取控制 (ABAC) AWS KMS,您可以使用 IAM政策中的 aws:ResourceTag/tag-key 全域條件金鑰,以允許存取具有特定標籤的KMS金鑰。
為了協助防止 AWS 服務在委託人是AWS 服務委託人的政策中用作混淆代理人,您可以使用 aws:SourceArn 或 aws:SourceAccount 全域條件索引鍵。如需詳細資訊,請參閱 使用 aws:SourceArn 或 aws:SourceAccount 條件金鑰。
如需 AWS 全域條件金鑰的相關資訊,包括可用的請求類型,請參閱 IAM 使用者指南中的AWS 全域條件內容金鑰。如需在IAM政策中使用全域條件金鑰的範例,請參閱IAM《 使用者指南》中的控制對請求的存取和控制標籤金鑰。
下列主題提供根據 IP 地址和VPC端點使用條件金鑰的特殊指引。
在政策中使用 IP 地址條件搭配 AWS KMS 許可
您可以使用 AWS KMS 來保護整合 AWS 服務中的資料。但是,在允許或拒絕存取的相同政策陳述式中指定 IP 地址條件運算子或aws:SourceIp
條件索引鍵時,請小心 AWS KMS。例如, 中的政策AWS: AWS 根據來源 IP 拒絕對 的存取, 會將 AWS 動作限制為來自指定 IP 範圍的請求。
考慮以下情形:
-
您可以將類似 所示的政策附加至 AWS: AWS 根據來源 IP 拒絕存取 至 IAM 身分。您將
aws:SourceIp
條件金鑰的值設定為使用者公司的 IP 地址範圍。此IAM身分已連接其他政策,允許其使用 Amazon EBS、Amazon EC2和 AWS KMS。 -
身分會嘗試將加密的EBS磁碟區連接至EC2執行個體。即使使用者有權使用所有相關的服務,這個動作仍會失敗,發生授權錯誤。
步驟 2 失敗,因為 AWS KMS 請求解密磁碟區的加密資料金鑰來自與 Amazon EC2基礎設施相關聯的 IP 地址。若要成功,請求必須來自原始使用者的 IP 地址。由於步驟 1 中的政策明確拒絕來自非指定 IP 地址的所有請求,EC2因此拒絕 Amazon 解密EBS磁碟區加密資料金鑰的許可。
此外,當請求來自 Amazon VPC端點時,aws:sourceIP
條件金鑰無效。若要限制VPC對端點的請求,包括AWS KMS VPC端點,請使用 aws:sourceVpce
或 aws:sourceVpc
條件索引鍵。如需詳細資訊,請參閱《Amazon VPC使用者指南》中的VPC端點 - 控制端點的使用。
在具有 AWS KMS 許可的政策中使用VPC端點條件
AWS KMS 支援由 支援的 Amazon Virtual Private Cloud (Amazon VPC) 端點。 AWS PrivateLink您可以在金鑰政策和IAM政策中使用下列全域條件金鑰,在請求來自 VPC或使用VPC端點時控制對 AWS KMS 資源的存取。如需詳細資訊,請參閱 使用VPC端點控制對 AWS KMS 資源的存取。
-
aws:SourceVpc
限制對來自指定 之請求的存取VPC。 -
aws:SourceVpce
會限制存取來自指定VPC端點的請求。
如果您使用這些條件金鑰來控制KMS對金鑰的存取,您可能會不小心拒絕 AWS KMS 代表您使用 AWS 的服務存取。
請注意避免 IP 地址條件金鑰範例這樣的狀況。如果您將KMS金鑰的請求限制為 VPC或 VPC端點,則 AWS KMS 從 Amazon S3 或 Amazon 等整合服務呼叫 EBS可能會失敗。即使來源請求最終源自 VPC或VPC端點,也可能發生這種情況。