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

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

查看配置合规性

您可以使用 AWS 配置控制台、AWS CLI 或 AWS Config API 查看您的规则及资源的合规性状态。

查看合规性 (控制台)

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

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

  3. 在导航窗格中,选择 Rules (规则)。控制台将显示 Rules 页面,其中列出了您的规则及每个规则的合规性状态。

  4. 选择一个规则,以查看它的 Rule details 页面。此页面将显示该规则的配置、状态及任何不符合该规则的 AWS 资源。

  5. 如果 Rule details 页面显示了任何不合规资源,请选择该资源的 Config timeline 图标 ( 
                        Config timeline icon.
                    ),查看其配置时间线页面。该页面将显示 AWS Config 在检测到资源不合规时捕获的配置设置。此信息可帮助您确定资源不符合规则的原因。有关更多信息,请参阅 查看配置详细信息

此外,您还可以在 Resource inventory 页面查找您的资源,以查看其合规性。有关更多信息,请参阅 查找 AWS Config 发现的资源

例 查看合规性 (AWS CLI)

要查看合规性,请使用以下任一 CLI 命令:

  • 要查看您的每个规则的合规性状态,请使用 describe-compliance-by-config-rule 命令,如以下示例所示:

    $ aws configservice describe-compliance-by-config-rule { "ComplianceByConfigRules": [ { "Compliance": { "ComplianceContributorCount": { "CappedCount": 2, "CapExceeded": false }, "ComplianceType": "NON_COMPLIANT" }, "ConfigRuleName": "instances-in-vpc" }, { "Compliance": { "ComplianceType": "COMPLIANT" }, "ConfigRuleName": "restricted-common-ports" }, ...

    对于合规性类型为NON_COMPLIANT,AWS Config 将为CappedCount参数。

  • 要查看 AWS Config 根据特定规则评估的每个资源的合规性状态,请使用get-compliance-details-by-config-rule命令,如以下示例所示:

    $ aws configservice get-compliance-details-by-config-rule --config-rule-name ConfigRuleName{ "EvaluationResults": [ { "EvaluationResultIdentifier": { "OrderingTimestamp": 1443610576.349, "EvaluationResultQualifier": { "ResourceType": "AWS::EC2::Instance", "ResourceId": "i-nnnnnnnn", "ConfigRuleName": "ConfigRuleName" } }, "ResultRecordedTime": 1443751424.969, "ConfigRuleInvokedTime": 1443751421.208, "ComplianceType": "COMPLIANT" }, { "EvaluationResultIdentifier": { "OrderingTimestamp": 1443610576.349, "EvaluationResultQualifier": { "ResourceType": "AWS::EC2::Instance", "ResourceId": "i-nnnnnnnn", "ConfigRuleName": "ConfigRuleName" } }, "ResultRecordedTime": 1443751425.083, "ConfigRuleInvokedTime": 1443751421.301, "ComplianceType": "NON_COMPLIANT" }, ...
  • 要查看每个特定类型的 AWS 资源的合规性状态,请使用describe-compliance-by-resource命令,如以下示例所示:

    $ aws configservice describe-compliance-by-resource --resource-type AWS::EC2::Instance { "ComplianceByResources": [ { "ResourceType": "AWS::EC2::Instance", "ResourceId": "i-nnnnnnnn", "Compliance": { "ComplianceContributorCount": { "CappedCount": 1, "CapExceeded": false }, "ComplianceType": "NON_COMPLIANT" } }, { "ResourceType": "AWS::EC2::Instance", "ResourceId": "i-nnnnnnnn", "Compliance": { "ComplianceType": "COMPLIANT" } }, ...
  • 要查看单个 AWS 资源的合规性详细信息,请使用get-compliance-details-by-resource命令。

    $ aws configservice get-compliance-details-by-resource --resource-type AWS::EC2::Instance --resource-id i-nnnnnnnn { "EvaluationResults": [ { "EvaluationResultIdentifier": { "OrderingTimestamp": 1443610576.349, "EvaluationResultQualifier": { "ResourceType": "AWS::EC2::Instance", "ResourceId": "i-nnnnnnnn", "ConfigRuleName": "instances-in-vpc" } }, "ResultRecordedTime": 1443751425.083, "ConfigRuleInvokedTime": 1443751421.301, "ComplianceType": "NON_COMPLIANT" } ] }

例 查看合规性 (AWS 配置 API)

要查看合规性,请使用以下任一 API 操作:

  • 要查看您的每个规则的合规性状态,请使用DescribeComplianceByConfigRuleaction.

  • 要查看 AWS Config 根据特定规则评估的每个资源的合规性状态,请使用GetComplianceDetailsByConfigRuleaction.

  • 要查看每个特定类型的 AWS 资源的合规性状态,请使用资源描述action.

  • 要查看单个 AWS 资源的合规性详细信息,请使用按资源取得合规性详细信息action. 详细信息包括:用于评估资源的 AWS Config 规则有哪些、每个规则最后一次评估资源的时间,以及资源是否符合每个规则。