

# IAM 策略验证
<a name="access_policies_policy-validator"></a>

[策略](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies_overview.html)是使用 [IAM policy 语法](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-grammar.html)编写的 JSON 文档。当您将策略附加到 IAM 实体（例如用户、组或角色）时，策略将向该实体授予权限。

当您使用 AWS 管理控制台 创建或编辑 IAM 访问控制策略时，AWS 会自动检查它们，以确保它们符合 IAM policy 语法。如果 AWS 确定策略不符合语法，则会提示您修复策略。

IAM Access Analyzer 提供额外的策略检查和建议，以帮助您进一步优化策略。要了解有关 IAM Access Analyzer 策略检查和可执行建议的更多信息，请参阅 [IAM Access Analyzer 策略验证](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html)。要查看 IAM Access Analyzer 返回的警告、错误和建议的列表，请参阅 [IAM Access Analyzer 策略检查参考](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-reference-policy-checks.html)。

**验证范围**  
AWS 检查 JSON 策略语法。它还验证您的 ARN 格式是否正确，操作名称和条件键是否正确。

**访问策略验证**  
当您创建 JSON 策略或在 AWS 管理控制台 中编辑现有策略时，将自动对策略进行验证。如果策略语法无效，您会收到通知，必须先解决问题，然后才能继续。如果您有适用于 `access-analyzer:ValidatePolicy` 的权限，则 IAM Access Analyzer 策略验证的结果会自动返回到 AWS 管理控制台。您还可以使用 AWS API 或 AWS CLI 验证策略。

**现有策略**  
您的现有策略可能无效，因为它们是在策略引擎的最新更新之前创建或保存的。作为[最佳实践](best-practices.md)，我们建议您使用 IAM Access Analyzer 验证您的 IAM policy，以确保权限的安全性和功能性。我们建议您打开现有策略并查看生成的策略验证结果。如果未修复任何策略语法错误，则无法编辑和保存现有策略。