使用 AWS 命令行界面设置聚合器 - AWS Config
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

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

使用 AWS 命令行界面设置聚合器

您可以使用 AWS 命令行界面 (AWS CLI) 创建、查看、更新和删除 AWS Config 聚合器数据。要使用 AWS 管理控制台,请参阅使用控制台设置聚合器

AWS CLI 是用于管理 AWS 服务的统一工具。如果您仅使用一种工具进行下载和配置,则可通过命令行控制多个 AWS 服务并使用脚本来自动执行这些服务。

要在本地计算机上安装 AWS CLI,请参阅安装 AWS CLI中的AWS CLI 用户指南

如有必要,请键入aws configure配置 AWS CLI 以使用 AWS 配置聚合器可用的 AWS 区域。

使用个人账户添加聚合器

  1. 打开命令提示符或终端窗口。

  2. 键入以下命令以创建一个名为 MyAggregator 的聚合器。

    aws configservice put-configuration-aggregator --configuration-aggregator-name MyAggregator --account-aggregation-sources "[{\"AccountIds\": [\"AccountID1\",\"AccountID2\",\"AccountID3\"],\"AllAwsRegions\": true}]"

    对于 account-aggregation-sources,请键入以下命令之一。

    • 以逗号分隔的您要为其聚合数据的 AWS 账户 ID 的列表。用方括号将账户 ID 括起来,并确保对引号进行转义 (例如,"[{\"AccountIds\": [\"AccountID1\",\"AccountID2\",\"AccountID3\"],\"AllAwsRegions\": true}]")。

    • 您还可以上传以逗号分隔的 AWS 账户 ID 的 JSON 文件。上传文件使用以下语法:--account-aggregation-sources MyFilePath/MyFile.json

      JSON 文件必须为以下格式:

    [ { "AccountIds": [ "AccountID1", "AccountID2", "AccountID3" ], "AllAwsRegions": true } ]
  3. 按 Enter 执行命令。

    您应该可以看到类似于如下所示的输出内容:

    { "ConfigurationAggregator": { "ConfigurationAggregatorArn": "arn:aws:config:Region:AccountID:config-aggregator/config-aggregator-floqpus3", "CreationTime": 1517942461.442, "ConfigurationAggregatorName": "MyAggregator", "AccountAggregationSources": [ { "AllAwsRegions": true, "AccountIds": [ "AccountID1", "AccountID2", "AccountID3" ] } ], "LastUpdatedTime": 1517942461.442 } }

使用 AWS Organizations 添加聚合器

在开始本过程之前,您必须登录到管理账户或注册委托管理员,并且所有功能都必须在组织中处于启用状态。

注意

在委托管理员创建聚合器之前,请确保管理账户为 AWS Config 服务原则名称 (config.amazonaws.com) 注册过度的管理员。要注册委托管理员,请参阅注册委托管理员

  1. 打开命令提示符或终端窗口。

  2. 键入以下命令以创建一个名为 MyAggregator 的聚合器。

    aws configservice put-configuration-aggregator --configuration-aggregator-name MyAggregator --organization-aggregation-source "{\"RoleArn\": \"Complete-Arn\",\"AllAwsRegions\": true}"
  3. 按 Enter 执行命令。

    您应该可以看到类似于如下所示的输出内容:

    { "ConfigurationAggregator": { "ConfigurationAggregatorArn": "arn:aws:config:Region:AccountID:config-aggregator/config-aggregator-floqpus3", "CreationTime": 1517942461.442, "ConfigurationAggregatorName": "MyAggregator", "OrganizationAggregationSource": { "AllAwsRegions": true, "RoleArn": "arn:aws:config:Region:AccountID:config-aggregator/config-aggregator-floqpus3" }, "LastUpdatedTime": 1517942461.442 } }

注册委托管理员

委派管理员是指给定 AWS 组织内的账户,它们被授予对指定 AWS 服务的额外管理权限。

  1. 使用管理帐户凭据登录。

  2. 打开命令提示符或终端窗口。

  3. 键入以下命令以启用服务访问:

    aws organizations enable-aws-service-access --service-principal config.amazonaws.com
  4. 要验证启用服务访问是否已完成,请键入以下命令,然后按 Enter 键执行命令。

    aws organizations list-aws-service-access-for-organization

    您应该可以看到类似于如下所示的输出内容:

    { "EnabledServicePrincipals": [ { "ServicePrincipal": "config.amazonaws.com", "DateEnabled": 1607020860.881 } ] }
  5. 接下来,键入以下命令,将成员账户注册为 AWS Config 的委托管理员。

    aws organizations register-delegated-administrator --service-principal config.amazonaws.com --account-id MemberAccountID
  6. 要验证委派管理员的注册是否已完成,请键入以下命令,然后按 Enter 键执行命令。

    aws organizations list-delegated-administrators --service-principal config.amazonaws.com

    您应该可以看到类似于如下所示的输出内容:

    { "DelegatedAdministrators": [ { "Id": "MemberAccountID", "Arn": "arn:aws:organizations::MemeberAccountID:account/o-c7esubdi38/DelegatedAdministratorAccountID", "Email": "name@amazon.com", "Name": "name", "Status": "ACTIVE", "JoinedMethod": "INVITED", "JoinedTimestamp": 1604867734.48, "DelegationEnabledDate": 1607020986.801 } ] }

查看聚合器

  1. 键入以下命令:

    aws configservice describe-configuration-aggregators
  2. 根据您的源账户,您应该看到类似于以下内容的输出:

    对于个人账户

    { "ConfigurationAggregators": [ { "ConfigurationAggregatorArn": "arn:aws:config:Region:AccountID:config-aggregator/config-aggregator-floqpus3", "CreationTime": 1517942461.442, "ConfigurationAggregatorName": "MyAggregator", "AccountAggregationSources": [ { "AllAwsRegions": true, "AccountIds": [ "AccountID1", "AccountID2", "AccountID3" ] } ], "LastUpdatedTime": 1517942461.455 } ] }

    OR

    对于组织

    { "ConfigurationAggregator": { "ConfigurationAggregatorArn": "arn:aws:config:Region:AccountID:config-aggregator/config-aggregator-floqpus3", "CreationTime": 1517942461.442, "ConfigurationAggregatorName": "MyAggregator", "OrganizationAggregationSource": { "AllAwsRegions": true, "RoleArn": "arn:aws:config:Region:AccountID:config-aggregator/config-aggregator-floqpus3" }, "LastUpdatedTime": 1517942461.442 } }

编辑聚合器

  1. 您可以使用 put-configuration-aggregator 命令来更新或编辑配置聚合器。

    键入以下命令以向 MyAggregator 添加新的账户 ID:

    aws configservice put-configuration-aggregator --configuration-aggregator-name MyAggregator --account-aggregation-sources "[{\"AccountIds\": [\"AccountID1\",\"AccountID2\",\"AccountID3\"],\"AllAwsRegions\": true}]"
  2. 根据您的源账户,您应该看到类似于以下内容的输出:

    对于个人账户

    { "ConfigurationAggregator": { "ConfigurationAggregatorArn": "arn:aws:config:Region:AccountID:config-aggregator/config-aggregator-xz2upuu6", "CreationTime": 1517952090.769, "ConfigurationAggregatorName": "MyAggregator", "AccountAggregationSources": [ { "AllAwsRegions": true, "AccountIds": [ "AccountID1", "AccountID2", "AccountID3", "AccountID4" ] } ], "LastUpdatedTime": 1517952566.445 } }

    OR

    对于组织

    { "ConfigurationAggregator": { "ConfigurationAggregatorArn": "arn:aws:config:Region:AccountID:config-aggregator/config-aggregator-floqpus3", "CreationTime": 1517942461.442, "ConfigurationAggregatorName": "MyAggregator", "OrganizationAggregationSource": { "AllAwsRegions": true, "RoleArn": "arn:aws:config:Region:AccountID:config-aggregator/config-aggregator-floqpus3" }, "LastUpdatedTime": 1517942461.442 } }

删除聚合器

使用 AWS CLI 删除配置聚合器

  • 键入以下命令:

    aws configservice delete-configuration-aggregator --configuration-aggregator-name MyAggregator

    如果成功,则命令会执行,而没有附加输出。

了解更多