

# IAM JSON 策略元素参考
<a name="reference_policies_elements"></a>

JSON 策略文档由元素组成。这些元素按照在策略中使用的大致顺度列出。元素的顺序并不重要，例如，`Resource` 元素可以在 `Action` 元素之前出现。您无需在策略中指定任何 `Condition` 元素。要详细了解 JSON 策略文档的一般结构和目的，请参阅 [JSON 策略概述](access_policies.md#access_policies-json)。

一些 JSON 策略元素相互排斥。这意味着，您不能创建同时使用两个元素的策略。例如，您不能在同一策略语句中同时使用 `Action` 和 `NotAction`。相互排斥的其他对包括 `Principal`/`NotPrincipal` 和 `Resource`/`NotResource`。

策略中所包含的具体内容因产品而异，其取决于产品所提供的操作、包含的资源类型等。当您针对特定产品编写策略时，参考该产品的示例将为您提供帮助。如需获取支持 IAM 的所有服务的列表，以及阐述这些服务的 IAM 和策略的文档链接，请参阅 [使用 IAM 的 AWS 服务](reference_aws-services-that-work-with-iam.md)。

 当您创建或编辑 JSON 策略时，IAM 可以执行策略验证以帮助您创建有效的策略。IAM 可识别 JSON 语法错误，而 IAM Access Analyzer 将提供额外的策略检查和建议，以帮助您进一步优化策略。要了解策略验证的更多信息，请参阅 [IAM 策略验证](access_policies_policy-validator.md)。要了解有关 IAM Access Analyzer 策略检查和可执行建议的更多信息，请参阅 [IAM Access Analyzer 策略验证](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html)。

**Topics**
+ [Version](reference_policies_elements_version.md)
+ [Id](reference_policies_elements_id.md)
+ [Statement](reference_policies_elements_statement.md)
+ [Sid](reference_policies_elements_sid.md)
+ [Effect](reference_policies_elements_effect.md)
+ [Principal](reference_policies_elements_principal.md)
+ [NotPrincipal](reference_policies_elements_notprincipal.md)
+ [Action](reference_policies_elements_action.md)
+ [NotAction](reference_policies_elements_notaction.md)
+ [Resource](reference_policies_elements_resource.md)
+ [NotResource](reference_policies_elements_notresource.md)
+ [Condition](reference_policies_elements_condition.md)
+ [变量和标签](reference_policies_variables.md)
+ [支持的数据类型](reference_policies_elements_datatypes.md)