如何让 metricbeat 使用 iam 策略访问其他 AWS 账户?

How can I let metricbeat use iam policy to access other AWS account?

我正在使用 metricbeat 监控来自几个 AWS 账户的指标。我已阅读文档:https://www.elastic.co/guide/en/beats/metricbeat/current/metricbeat-module-aws.html

它说将凭据配置为环境变量或在 aws 凭据文件中。但我想使用跨账户 IAM 策略来访问不同的 AWS 账户。这意味着 metricbeat 在尝试查询指标时需要承担一个角色。我怎样才能在 metrcibeat 中实现这一点?我在他们的文档中找不到相关文档。

所以你可以这样指定IAM Role

Metricbeat Configuration Params

metricbeat.modules:
- module: aws
  period: 300s
  metricsets:
    - ec2
  role_arn: arn:aws:iam::123456789012:role/test-mb

我会说没有什么比 Cross Account Policy.

根据您通过 IAM Policies 分配给它的策略,您的角色具有权限。

当您想使用 Cross-Account IAM Roles 时,您仍然需要为您在目标帐户 + 中创建的角色分配 IAM PoliciesIAM Trust Policy,以便您可以从另一个帐户承担角色,此外,您的源 IAM Role 必须具有承担目标 IAM Role

的权限

IAM Role Delegation

How to use trust policies with IAM roles

IAM Tutorial: Delegate access across AWS accounts using IAM roles