

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用 Lambda 中的屬性型存取控制
<a name="attribute-based-access-control"></a>

搭配[屬性型存取控制 (ABAC)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_attribute-based-access-control.html)，您可以使用標籤來控制對 Lambda 資源的存取。您可以將標籤連接至特定 Lambda 資源、將其連接至特定 API 請求，或將其連接至提出請求的 AWS Identity and Access Management (IAM) 委託人。如需如何 AWS 授予屬性型存取的詳細資訊，請參閱《*IAM 使用者指南*》中的[使用標籤控制對 AWS 資源的存取](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html)。

您可以使用 ABAC 來[授予最低權限](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege)，無需在 IAM 政策中指定 Amazon Resource Name (ARN) 或 ARN 模式。可以在 IAM 政策 的[條件元素](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html)中指定標籤，來控制存取。使用 ABAC 可以更輕鬆地擴展，因為在建立新資源時，您無需更新 IAM 政策，而是將標籤新增至新資源以控制存取。

在 Lambda 中，標籤適用於以下資源：
+ 函數 – 如需標記函數的詳細資訊，請參閱[在 Lambda 函數上使用標籤](configuration-tags.md)。
+ 程式碼簽署組態 – 如需標記程式碼簽署組態的詳細資訊，請參閱[在程式碼簽署組態上使用標籤](tags-csc.md)。
+ 事件來源映射 – 如需標記事件來源映射的詳細資訊，請參閱[在事件來源映射上使用標籤](tags-esm.md)。

層不支援標籤。

您可以使用以下條件索引鍵，根據標籤撰寫 IAM 政策規則：
+ [aws:ResourceTag/tag-key](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-resourcetag)：依據連接至 Lambda 資源的標籤來控制存取。
+ [aws:RequestTag/tag-key](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-requesttag)：要求請求中有標籤，例如在建立新函數時。
+ [aws:PrincipalTag/tag-key](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-principaltag)：依據連接至其 IAM [使用者](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags_users.html) 或[角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags_roles.html)的標籤，控制 IAM 主體 (提出請求者) 允許執行的操作。
+  [aws:TagKeys](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-tagkeys)：控制可否於請求中使用特定標籤索引鍵。

 只能為支援它們的動作指定條件。如需每個 Lambda 動作所支援的條件清單，請參閱《服務授權參考》中的 [Actions, resources, and condition keys for AWS Lambda](https://docs.aws.amazon.com//service-authorization/latest/reference/list_awslambda.html)。如需 **aws：ResourceTag/tag-key** 支援，請參閱「由 定義的資源類型」 AWS Lambda。如需 **aws：RequestTag/tag-key** 和 **aws：TagKeys** 支援，請參閱「由 定義的動作」 AWS Lambda。

**Topics**
+ [依標籤保護您的函數](attribute-based-access-control-example.md)