如何承担从python中的AWS配置规则传递的角色

时间:2019-06-28 15:29:14

标签: python amazon-web-services amazon-iam aws-sts

我试图集中管理子帐户中运行的自定义配置规则的lambda函数。 lambda函数将承担角色,该角色将作为参数传递给配置规则。

我正在关注How to Centrally Manage AWS Config Rules across Multiple AWS Accounts | AWS DevOps Blog

有人提到这样做:

// Assume the role passed from the managed-account

aws.config.credentials = new aws.TemporaryCredentials({RoleArn: ruleParameters.executionRole});
let config = new aws.ConfigService({});

在Python中怎么做?

1 个答案:

答案 0 :(得分:0)

我浏览了您共享的博客,并根据该博客说, 在客户帐户中创建配置规则时,必须将executionRole作为参数传递。

  • 如果您不知道什么是executionRole,则是在管理帐户中的步骤3中创建的角色,该角色可以由admin帐户中的role/lambda_config_role承担。
  • role/lambda_config_role是您分配给父帐户中的lambda函数的角色。

根据博客:

  1. 在管理员帐户中创建角色A。
  2. 在客户帐户中创建角色B。
  3. 将角色A作为受信任的实体添加到角色B。
  4. 在创建配置规则时,将角色B作为参数传递给Lambda函数。 (可以按照博客的第5步中的说明进行操作。)
  5. 在admin帐户的python代码中使用role参数。由于您已允许角色A承担角色B,因此角色A具有创建临时凭证和使用它们的必要权限。