常见问题 - Amazon Config
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

常见问题

看不到我最新的配置更改

我可以立即查看我的配置更改吗?

Amazon Config 通常会在检测到更改后立即或按您指定的频率记录对资源的配置更改。但是,这需要尽最大努力,有时可能需要更长的时间。如果问题在一段时间后仍然存在,请联系Amazon Web Services 支持并提供亚马逊 CloudWatch支持的 Amazon Config 指标。有关这些指标的信息,请参阅Amazon Config 使用情况和成功指标

中的间接关系 Amazon Config

什么是资源关系?

在中 Amazon,资源是指可管理的实体,例如亚马逊弹性计算云 (Amazon EC2) 实例、 Amazon CloudFormation 堆栈或 Amazon S3 存储桶。 Amazon Config 是一项跟踪和监视资源的服务,每当检测到录制的资源类型发生更改时,或者按照您设置的录制频率创建配置项目 (CIs)。例如,当设置 Amazon Config 为跟踪 Amazon EC2 实例时,它会在每次创建、更新或删除实例时创建一个配置项目。创建的每个配置项目 Amazon Config 都有多个字段,包括accountIdarn(Amazon 资源名称)awsRegionconfigurationtags、和relationships。CI 的关系字段可以 Amazon Config 显示资源是如何相互关联的。例如,关系可能表明带有 ID 的 Amazon EBS 卷vol-123ab45d已附加到与安全组sg-ef678hk关联的带i-a1b2c3d4有 ID 的亚马逊 EC2 实例。

什么是与资源的直接关系和间接关系?

Amazon Config 从配置字段中推导出大多数资源类型的关系,这些关系称为 “直接” 关系。直接关系是一个资源 (A) 和另一个资源 (B) 之间的单向连接 (A→B),通常从资源 (A) 的描述 API 响应中获得。过去,对于 Amazon Config 最初支持的某些资源类型,它还会从其他资源的配置中捕获关系,从而创建双向的 “间接” 关系(B→A)。例如,Amazon EC2 实例与其安全组之间的关系是直接的,因为安全组包含在亚马逊 EC2 实例的描述 API 响应中。另一方面,安全组和 Amazon EC2 实例之间的关系是间接的,因为描述安全组不会返回与其关联的实例的任何信息。

例如,间接关系可以帮助回答以下问题:

  • 当 NAT 网关出现故障时,私有子网中的哪些 EC2 实例会受到影响?

  • 如果修改了路由表,哪个 EC2 实例可能会遇到连接问题?

  • 从未使用过哪个安全组?

  • 挂载到 EC2 实例的哪个辅助 ENI 与安全组相关联?

因此,当检测到资源配置更改时, Amazon Config 不仅会为该资源创建 CI,还会 CIs 为任何相关资源(包括具有间接关系的资源)生成 CI。例如,当 Amazon Config 检测到 Amazon EC2 实例中的更改时,它会为该实例创建一个 CI,为与该实例关联的安全组创建一个 CI。

Amazon Config 支持哪些间接关系?

中支持以下间接资源关系 Amazon Config。

资源类型 与此资源类型间接相关
AWS::EC2::RouteTable AWS::EC2::Instance, AWS::EC2::NetworkInterface, AWS::EC2::Subnet, AWS::EC2::VPNGateway, AWS::EC2::VPC
AWS::EC2::EIP AWS::EC2::Instance, AWS::EC2::NetworkInterface
AWS::EC2::Instance AWS::EC2::SecurityGroup, AWS::EC2::Subnet, AWS::EC2::VPC
AWS::EC2::NetworkInterface AWS::EC2::SecurityGroup, AWS::EC2::Subnet, AWS::EC2::VPC
AWS::EC2::NetworkACL AWS::EC2::Subnet, AWS::EC2::VPC
AWS::EC2::VPNConnection AWS::EC2::VPNGateway, AWS::EC2::CustomerGateway
AWS::EC2::InternetGateway AWS::EC2::VPC
AWS::EC2::SecurityGroup AWS::EC2::VPC
AWS::EC2::Subnet AWS::EC2::VPC
AWS::EC2::VPNGateway AWS::EC2::VPC

哪些场景使用间接关系?

以下 Amazon 是使用间接关系的服务和服务的功能。

Amazon 特征 场景
Amazon Config 托管规则

ec2-security-group-attached-to-eni 规则检查非默认安全组是否已连接到弹性网络接口 (ENI)。

如果没有间接关系,则需要创建自定义规则来检查非默认安全组是否已附加到 ENI。

Amazon Firewall Manager

使用情况审计安全组策略使用间接关系来了解上次使用安全组的时间。

如果没有间接关系,则需要同时建立安全组并将其关联到新资源,以避免触发规则 Amazon Firewall Manager。

默认资源
  • 创建非默认 VPC 时的默认资源:

    • 默认安全组、默认网络 ACL 和默认路由表。

  • 创建默认 VPC 时的默认资源:

    • 在您有权访问的每个可用区中使用非默认 VPC、Internet 网关和默认子网创建的所有内容。

  • 当账户首次调用 EC2时,会自行创建默认 VPC。

    • 为新启动的可用区中的账户创建的默认子网。

如果没有间接关系,则反熵最多需要等待 12 小时才能记录对默认资源的更改。

由于直接关系和间接关系,配置项是如何创建的?

对于资源之间的直接关系 (A→B),对资源 B 的任何配置更改也将启动资源 A 的配置项 (CI)。同样,对于间接关系 (B→A),当资源 A 发生配置更改时,将为资源 B 生成一个新的 CI。例如,Amazon EC2 实例与安全组是直接关系,因此对安全组的任何配置更改都将为安全组生成 CI 以及实例的 CI。 EC2同样,安全组与 Amazon EC2 实例是一种间接关系,因此对 EC2 实例的任何配置更改都将为 Amazon EC2 实例生成 CI 以及为安全组生成 CI。

由于间接关系而生成的配置项有哪些?

以下是由于间接资源关系而生成的其他配置项目 (CIs)。

以下资源类型的配置更改 将 CIs 为以下资源类型生成
AWS::EC2::RouteTable AWS::EC2::InstanceAWS::EC2::NetworkInterfaceAWS::EC2::SubnetAWS::EC2::VPNGatewayAWS::EC2::VPC
AWS::EC2::EIP AWS::EC2::Instance, AWS::EC2::NetworkInterface
AWS::EC2::Instance AWS::EC2::SecurityGroup, AWS::EC2::Subnet, AWS::EC2::VPC
AWS::EC2::NetworkInterface AWS::EC2::SecurityGroup, AWS::EC2::Subnet, AWS::EC2::VPC
AWS::EC2::NetworkACL AWS::EC2::Subnet, AWS::EC2::VPC
AWS::EC2::VPNConnection AWS::EC2::VPNGateway, AWS::EC2::CustomerGateway
AWS::EC2::InternetGateway AWS::EC2::VPC
AWS::EC2::SecurityGroup AWS::EC2::VPC
AWS::EC2::Subnet AWS::EC2::VPC
AWS::EC2::VPNGateway AWS::EC2::VPC

如何禁用间接关系?

完成以下步骤以禁用间接关系:

  1. 使用您的账户或管理账户为多个账户开立 Amazon Web Services 支持 案例。

  2. 选择技术作为支持类型。

  3. 在 “服务” 中,选择Amazon Config

  4. 在 “类别” 中,选择 “其他”。

  5. 选择适当的严重性级别。

  6. 在主题行中输入 “禁用间接关系”。

  7. 在描述中:

    • 确认您已阅读此常见问题解答并想要继续。

    • 列出您要禁用间接关系的区域。

    • 如果使用管理账户提交,请包括账户 IDs 及其关联区域。

    • 对于多个账户,您可以附加包含账户 IDs 和地区的 CSV 文件。

Amazon Web Services 支持 工程师将提供后续步骤和状态更新。我们建议您维护一份禁用间接关系的 Amazon 账户和地区的列表。对于新账户,请提交新 Amazon Web Services 支持 案例以禁用间接关系。

如何检索与间接关系相关的配置数据?

您可以在 Amazon Config 高级查询中运行结构化查询语言 (SQL) 查询,以检索与间接资源关系相关的配置数据。例如,如果您想检索与安全组相关的 Amazon EC2 实例列表,请使用以下查询:

SELECT resourceId, resourceType WHERE resourceType ='AWS::EC2::Instance' AND relationships.resourceId = 'sg-234213'