管理您的 AWS Config 规则 - AWS Config
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

管理您的 AWS Config 规则

您可以使用 AWS Config 控制台、AWS CLI 和 AWS Config API 来查看、添加和删除您的规则。

添加、查看、更新和删除规则(控制台)

Rules 页面上,您可以查看您账户中的区域规则。您还可以查看每个规则的评估状态。

查看您的规则

  1. 登录到 AWS 管理控制台,然后通过以下网址打开 AWS Config 控制台:https://console.aws.amazon.com/config/

  2. 在 AWS 管理控制台中,验证区域选择器是否设置为支持 AWS Config 规则的区域。有关受支持的区域的列表,请参阅AWS Config 区域和终端节点中的Amazon Web Services 一般参考

  3. 选择 Rules。这些区域有:规则页面将显示您 AWS 账户中当前存在的所有规则。它列出了每个规则的名称、关联的修正操作和合规性状态。

    • 选择 Add rule 以开始创建规则。

    • 选择一个规则以查看其设置,或者选择一个规则查看详细信息

    • 当规则评估资源时,请查看规则的合规性状态。

    • 选择一个规则,编辑规则更改规则的配置设置,并为不符合规则设置修正操作。

更新规则

  1. 选择一个规则,编辑规则对于您要更新的规则。

  2. Config rule 页面上修改设置,以根据需要更改您的规则。

  3. 选择 Save

删除一项规则

  1. 选择一个规则,编辑规则对于您要删除的规则。

  2. Configure rule 页面上,选择 Delete rule

  3. 系统提示时,选择删除

添加一项规则

如果您选择添加规则,可 AWS 在添加规则页. 您还可以创建自己的自定义规则。

  1. 如果您要创建自己的规则,请选择 Add custom rule,然后按照为 AWS Config 制定自定义规则中的过程操作。

  2. 要添加托管规则,请在该页面上选择一个规则,然后按照使用 AWS Config 托管规则中的过程操作。

Add rule 页面上,可以执行以下操作:

  • 选择 Add custom rule 以创建自己的规则。

  • 在搜索字段中键入,以便按规则名称、描述或标签筛选结果。例如,键入 EC2 可返回评估 EC2 资源类型的规则,或者键入 periodic 可返回具有定期触发器的规则。键入“new”可搜索新添加的规则。有关触发器类型的更多信息,请参阅为 AWS Config 规则指定触发器

  • 按字母顺序重新排序结果,方法是选择名称标签。

  • 选择箭头图标可查看下一页规则。

  • 查看最近添加的标记为New

  • 查看标签来确定规则所评估的资源类型以及规则是否具有定期触发器。

查看、更新和删除规则 (AWS CLI)

查看您的规则

  • 使用 describe-config-rules 命令:

    $ aws configservice describe-config-rules

    AWS Config 将返回您的所有规则的详细信息。

更新规则

  1. 使用包含 --generate-cli-skeleton 参数的 put-config-rule 命令来创建包含您的规则参数的本地 JSON 文件:

    $ aws configservice put-config-rule --generate-cli-skeleton > putConfigRule.json
  2. 在文本编辑器中打开该 JSON 文件,然后删除不需要更新的所有参数,不过以下内容例外:

    • 至少包括以下参数之一以确定规则:

      ConfigRuleNameConfigRuleArn,或者ConfigRuleId

    • 如果您要更新自定义规则,则必须包含 Source 对象及其参数。

  3. 填写剩余参数的值。要引用规则的详细信息,请使用 describe-config-rules 命令。

    例如,以下 JSON 代码可以更新自定义规则范围内的资源类型:

    { "ConfigRule": { "ConfigRuleName": "ConfigRuleName", "Scope": { "ComplianceResourceTypes": [ "AWS::EC2::Instance", "AWS::EC2::Volume", "AWS::EC2::VPC" ] }, "Source": { "Owner": "CUSTOM_LAMBDA", "SourceIdentifier": "arn:aws:lambda:us-east-2:123456789012:function:ConfigRuleName", "SourceDetails": [ { "EventSource": "aws.config", "MessageType": "ConfigurationItemChangeNotification" } ] } } }
  4. 使用put-config-rule命令--cli-input-json参数将您的 JSON 配置传递到 AWS Config:

    $ aws configservice put-config-rule --cli-input-json file://putConfigRule.json
  5. 要验证您是否成功更新了规则,请使用 describe-config-rules 命令查看该规则的配置:

    $ aws configservice describe-config-rules --config-rule-name ConfigRuleName { "ConfigRules": [ { "ConfigRuleState": "ACTIVE", "ConfigRuleName": "ConfigRuleName", "ConfigRuleArn": "arn:aws:config:us-east-2:123456789012:config-rule/config-rule-nnnnnn", "Source": { "Owner": "CUSTOM_LAMBDA", "SourceIdentifier": "arn:aws:lambda:us-east-2:123456789012:function:ConfigRuleName", "SourceDetails": [ { "EventSource": "aws.config", "MessageType": "ConfigurationItemChangeNotification" } ] }, "Scope": { "ComplianceResourceTypes": [ "AWS::EC2::Instance", "AWS::EC2::Volume", "AWS::EC2::VPC" ] }, "ConfigRuleId": "config-rule-nnnnnn" } ] }

删除一项规则

  • 使用以下示例中所示的 delete-config-rule 命令:

    $ aws configservice delete-config-rule --config-rule-name ConfigRuleName

查看、更新和删除规则 (API)

查看您的规则

使用DescribeConfigRulesaction.

更新或添加规则

使用PutConfigRuleaction.

删除一项规则

使用DeleteConfigRuleaction.

注意

如果一个规则创建无效的评估结果,您可能希望在修复该规则并运行新评估之前删除这些结果。有关更多信息,请参阅 删除评估结果