本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 Lambda 中的屬性型存取控制
搭配屬性型存取控制 (ABAC),您可以使用標籤來控制對 Lambda 資源的存取。您可以將標籤連接至特定 Lambda 資源、特定 API 請求,或連接至提出請求的 AWS Identity and Access Management (IAM) 主體。如需有關 AWS 如何授予屬性型存取權的詳細資訊,請參閱《IAM 使用者指南》中的使用標籤控制對 AWS 資源的存取。
您可以使用 ABAC 來授予最低權限,無需在 IAM 政策中指定 Amazon Resource Name (ARN) 或 ARN 模式。可以在 IAM 政策 的條件元素中指定標籤,來控制存取。使用 ABAC 可以更輕鬆地擴展,因為在建立新資源時,您無需更新 IAM 政策,而是將標籤新增至新資源以控制存取。
在 Lambda 中,標籤適用於以下資源:
函數 – 如需標記函數的詳細資訊,請參閱在 Lambda 函數上使用標籤。
程式碼簽署組態 – 如需標記程式碼簽署組態的詳細資訊,請參閱在程式碼簽署組態上使用標籤。
事件來源映射 – 如需標記事件來源映射的詳細資訊,請參閱在事件來源映射上使用標籤。
層不支援標籤。
您可以使用以下條件索引鍵,根據標籤撰寫 IAM 政策規則:
-
aws:ResourceTag/tag-key:依據連接至 Lambda 資源的標籤來控制存取。
-
aws:RequestTag/tag-key:要求請求中有標籤,例如在建立新函數時。
-
aws:PrincipalTag/tag-key:依據連接至其 IAM 使用者 或角色的標籤,控制 IAM 主體 (提出請求者) 允許執行的操作。
-
aws:TagKeys:控制可否於請求中使用特定標籤索引鍵。
只能為支援它們的動作指定條件。如需每個 Lambda 動作所支援的條件清單,請參閱《服務授權參考》中的 Actions, resources, and condition keys for AWS Lambda。如需 aws:ResourceTag/tag-key 支援,請參閱「由 AWS Lambda 定義的資源類型」。如需 aws:RequestTag/tag-key 和 aws:TagKeys 支援,請參閱「由 AWS Lambda 定義的動作」。