AWS使用日志2--Config使用相关

什么是Config

资源管理

为了更好地管理您的资源配置并检测资源的错误配置,您需随时详细了解存在哪些资源以及这些资源的配置方式。无论何时创建、修改或删除资源,您都可以使用 AWS Config 通知您,而不必通过轮询对每个资源的调用来监控这些更改。
您可以使用 AWS Config 规则来评估 AWS 资源的配置设置。当 AWS Config 检测到某个资源违反了您的某条规则中的条件时,会将该资源 AWS Config 标记为不合规并发送通知。 AWS Config 在创建、更改或删除您的资源时持续对其进行评估。

审计与合规性

您使用的数据可能需要频繁审计,以确保其符合内部策略与最佳实践。为了证实合规性,您需要了解资源的历史配置。此信息由提供 AWS Config。

注意事项

  • AWS 账户: 你需要一个活跃 AWS 账户的。有关更多信息,请参阅注册 AWS。
  • Amazon S3 存储桶:您需要一个 S3 存储桶来接收配置快照和历史记录的数据。有关更多信息,请参阅 Amazon S3 存储桶的权限。
  • Amazon SNS 主题:当您的配置快照和历史记录发生变化时,您需要 Amazon SNS 才能收到通知。有关更多信息,请参阅 Amazon SNS 主题的权限。
  • IAM 角色:您需要一个 IAM 角色,该角色有权访问 AWS Config。有关更多信息,请参阅 IAM 角色的权限。
  • 资源类型:您可以决定 AWS Config 要记录哪些资源类型。有关更多信息,请参阅录制 AWS 资源。

如何使用

配置Config

默认情况下,Config会记录当前账号的所有region下的所有资源,如果你觉得太多的话,可以进行修改,配置项在Settings这个tab中

可以看到,setting分为上下两部分

  • data and delivery,是数据的保存时长以及存储的S3 bucket,以及事件发送到哪一个SNS
  • Recorder, 用来设置我们要设置哪些事件

Data and delivery

这里面设置这么几项

  • 数据的保存时间,默认7年,也可以设置自定义,以天为单位
  • S3 bucket,即日志的保存位置,可以选择其他账号
  • SNS topic,即如果有事件生成,要发送到哪一个SNS,也可以选择其他账号

Recorder

在这里可以配置需要记录哪些资源
可以选择全部资源,也可以选择指定资源
另外还需要选择资源记录的频率

  • Daily,每天只记录一次
  • Continuous,持续记录,没有间隔
    另外,默认所有资源的所有频率都是Continuous

查看Resource

点击左上方的Resources,就可以看到这个账号下所有的Resources啦,可以根据category跟type以及compliance进行检索
以S3 bucket资源为例

点击即可进入详情
在详情中就可以看到很多详细的信息,如创建时间等

如果下拉的话,还能看到这个资源的相关合规性检测,例如图中就可以看到很多的不合规

如果点击右上角的Resource Timeline,就能看到针对该资源的所有event,例如修改了配置之类的

高级搜索

高级查询功能提供了单一查询终端节点和强大的查询语言以获得当前资源状态元数据,而无需执行特定于服务的描述 API 调用。
可以使用配置Aggregator跨多个账户和AWS区域从中央账户运行相同的查询

创建query其实也很简单,如果需要查询aggregator中的所有数据,就选择对应的aggregator即可
然后写入具体的查询语句,即可查询到相关信息

AWS Config 与标签的关联

  • 标签作为规则条件: 您可以在 AWS Config 规则中使用标签作为条件,例如:
  • 检查特定资源是否具有特定标签。
  • 检查特定资源是否具有特定的标签值。
  • 检查资源标签是否符合您的预定义策略。
  • 标签用于修复操作: 在某些情况下,AWS Config 规则可以利用标签来执行修复操作。例如,如果一个资源没有必要的标签,AWS Config 规则可以自动添加标签到该资源。
  • 标签用于资源过滤: 您可以使用标签来过滤您的资源,例如,在 AWS 控制台中查看所有带有特定标签的 EC2 实例,或者在 AWS Config 中查看所有带有特定标签的资源配置历史记录。
  • 标签用于访问控制: 您可以利用标签来实现基于标签的访问控制,例如,只允许特定用户或组访问带有特定标签的资源。

例子:

假设您希望确保所有 EC2 实例都具有 “Environment” 标签,并且其值为 “Production” 或
“Development”。您可以创建一个 AWS Config 规则,检查所有 EC2 实例是否具有 “Environment”
标签,并且其值为 “Production” 或
“Development”。如果某个实例没有标签或标签值不符合要求,该规则可以触发一个修复操作,自动添加或修改标签。

Config 中的aggregator

如果我们是单一账号,那么这个功能可能没什么用,但是如果我们使用了control tower或者存在多个账号统一管理,我们就可以使用Aggregator这个功能,将所有的账号的config rule聚合过来集中查看,而不需要每个账号查看
但是需要注意,在eventbridge中无法触发aggregator中的complaint变化,只能触发当前账号的rule