AWS Config
开发人员指南
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。点 击 Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

管理您的 AWS Config 规则

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

使用控制台

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

查看您的规则

  1. 登录 AWS 管理控制台 并通过以下网址打开 AWS Config 控制台:https://console.amazonaws.cn/config/

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

  3. 选择 RulesRules 页面显示了您的规则以及每个规则的合规性状态。

 “AWS Config rules”页面介绍如何查看您的规则。
  1. 选择 Add rule 以开始创建规则。

  2. 选择规则名称以查看其设置。

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

  4. 选择 Edit rule 图标 (  “Edit rule”图标。 ) 以编辑规则。

  5. 选择“刷新”(  “Edit rule”图标。 ) 图标以重新加载合规性结果。

更新规则

  1. 针对您要更新的规则,选择 Edit rule 图标 (  “Edit rule”图标。 )。

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

  3. 选择 Save

删除一项规则

  1. 针对您要删除的规则,选择 Edit rule 图标 (  “Edit rule”图标。 )。

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

  3. 系统提示时,选择 Delete

添加一项规则

如果您选择 Add rule,可以在 Add rule 页面上查看可用的 AWS 托管规则。您还可以创建自己的自定义规则。

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

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

 “AWS Config rules”页介绍如何在设置规则后进行管理。

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

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

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

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

  4. 最近添加的规则标记为 New

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

使用 AWS CLI

查看您的规则

  • 使用 describe-config-rules 命令:

    Copy
    $ aws configservice describe-config-rules

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

更新规则

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

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

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

      ConfigRuleNameConfigRuleArnConfigRuleId

    • 如果您要更新自定义规则,则必须包含 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. 使用包含 --cli-input-json 参数的 put-config-rule 命令将您的 JSON 配置传递到 AWS Config:

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

    Copy
    $ 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 命令:

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

使用 AWS Config API

查看您的规则

使用 DescribeConfigRules 操作。

更新或添加规则

使用 PutConfigRule 操作。

删除一项规则

使用 DeleteConfigRule 操作。

删除评估结果

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