使用 AWS Config 规则评估您的资源 - AWS Config

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

使用 AWS Config 规则评估您的资源

创建自定义规则或使用托管规则时,会根据这些规则 AWS Config 评估您的资源。您可以按照您的规则对资源进行按需评估。例如,当您创建自定义规则并希望检查该规则 AWS Config 是否正确评估您的资源或确定 AWS Lambda 函数的评估逻辑是否存在问题时,这会很有帮助。

示例
  1. 您创建一个自定义规则,用以评估您的 IAM 用户是否具有有效的访问密钥。

  2. AWS Config 根据您的自定义规则评估您的资源。

  3. 在您的账户中存在一个没有有效访问密钥的 IAM 用户。您的规则不能正确将此资源标记为 NON_COMPLIANT。

  4. 您修复规则并重新开始评估。

  5. 由于您修复了规则,规则正确评估您的资源,并将 IAM 用户资源标记为 NON_COMPLIANT。

向账户添加规则时,您可以指定在资源创建和管理过程中何 AWS Config 时评估您的资源。资源创建和管理过程称为资源预置。您可以选择评估模式来指定在此过程中何 AWS Config 时评估您的资源。

根据规则, AWS Config 可以在部署资源之前、部署资源之后或两者兼而有之地评估您的资源配置。在资源部署之前对其进行评估是主动评估。在资源部署之后对其进行评估是侦查评估

使用主动评估在资源部署之前对其进行评估。这使您可以评估一组资源属性(如果用于定义 AWS 资源)是合规还是不合规,因为您所在地区的账户中有一组主动规则。

资源类型架构说明了资源的属性。您可以在 AWS CloudFormation 注册表的 “AWS 公共扩展” 中找到资源类型架构,也可以使用以下 CLI 命令找到:

aws cloudformation describe-type --type-name "AWS::S3::Bucket" --type RESOURCE

有关更多信息,请参阅通过 AWS CloudFormation 注册表管理扩展以及 AWS CloudFormation 用户指南中的AWS 资源和属性类型参考

注意

主动规则不会修复标记为 NON_COMPLIANT 的资源,也不会阻止部署这些资源。

评估您的资源

开启主动评估
  1. 登录 AWS Management Console 并打开 AWS Config 控制台,网址为 https://console.aws.amazon.com/config/

  2. 在 AWS Management Console 菜单中,确认区域选择器设置为支持 AWS Config 规则的区域。有关支持的 AWS 区域的列表,请参阅《Amazon Web Services 一般参考》中的 AWS Config 区域和端点

  3. 在左侧导航窗格中,选择 Rules。有关支持主动评估的托管规则列表,请参阅按评估模式列出的 AWS Config 托管规则列表。

  4. 选择规则,然后为要更新的规则选择编辑规则

  5. 对于评估模式,选择开启主动评估,以允许您在部署资源之前对资源的配置设置进行评估。

  6. 选择保存

注意

您也可以使用put-config-rule命令和启用PROACTIVE开启主动评估,EvaluationModes或者使用PutConfigRule操作和启PROACTIVEEvaluationModes

开启主动评估后,您可以使用 StartResourceEvaluationAPI 和 GetResourceEvaluationSummaryAPI 来检查您在这些命令中指定的资源是否会被您所在地区的账户中的主动规则标记为 “不合规”。

例如,从 StartResourceEvaluation API 开始:

aws configservice start-resource-evaluation --evaluation-mode PROACTIVE --resource-details '{"ResourceId":"MY_RESOURCE_ID", "ResourceType":"AWS::RESOURCE::TYPE", "ResourceConfiguration":"RESOURCE_DEFINITION_AS_PER_THE_RESOURCE_CONFIGURATION_SCHEMA", "ResourceConfigurationSchemaType":"CFN_RESOURCE_SCHEMA"}'

您应该会在输出中收到 ResourceEvaluationId

{ "ResourceEvaluationId": "MY_RESOURCE_EVALUATION_ID" }

然后,使用ResourceEvaluationId带有 GetResourceEvaluationSummary API 的来检查评估结果:

aws configservice get-resource-evaluation-summary --resource-evaluation-id MY_RESOURCE_EVALUATION_ID

您应收到类似以下内容的输出:

{ "ResourceEvaluationId": "MY_RESOURCE_EVALUATION_ID", "EvaluationMode": "PROACTIVE", "EvaluationStatus": { "Status": "SUCCEEDED" }, "EvaluationStartTimestamp": "2022-11-15T19:13:46.029000+00:00", "Compliance": "COMPLIANT", "ResourceDetails": { "ResourceId": "MY_RESOURCE_ID", "ResourceType": "AWS::RESOURCE::TYPE", "ResourceConfiguration": "RESOURCE_DEFINITION_AS_PER_THE_RESOURCE_CONFIGURATION_SCHEMA" } }

要查看有关评估结果的更多信息,例如哪条规则将资源标记为 “不合规”,请使用 API。GetComplianceDetailsByResource

使用侦查评估来评估已部署的资源。这允许您评估现有资源的配置设置。

评估您的资源(控制台)

  1. 登录 AWS Management Console 并打开 AWS Config 控制台,网址为 https://console.aws.amazon.com/config/

  2. 在 AWS Management Console 菜单中,检查区域选择器是否设置为支持 AWS Config 规则的区域。有关支持的区域的列表,请参阅《Amazon Web Services 一般参考》中的 AWS Config 区域和终端节点

  3. 在导航窗格中,选择规则规则页面显示每条规则的名称、关联的修正操作和合规性状态。

  4. 从表中选择规则。

  5. 操作下拉列表中,选择重新评估

  6. AWS Config 开始根据您的规则评估资源。

注意

您可以每分钟重新评估一次规则。您必须等待 AWS Config 规则的评估完成后才能开始另一次评估。如果规则同时被更新或同时被删除,您将无法运行评估。

评估您的资源 (CLI)

  • 使用 start-config-rules-evaluation 命令:

    $ aws configservice start-config-rules-evaluation --config-rule-names ConfigRuleName

    AWS Config 开始根据您的规则评估记录的资源配置。您还可以在请求中指定多个规则:

    $ aws configservice start-config-rules-evaluation --config-rule-names ConfigRuleName1 ConfigRuleName2 ConfigRuleName3

评估您的资源 (API)

使用 StartConfigRulesEvaluation 操作。