cyb*_*bat 5 amazon-web-services aws-cdk
在我的场景中,我有 2 个帐户(11111111、22222222)需要调用第三个帐户中的 lambda:33333333。第三个帐户中的 lambda 将从前 2 个帐户中的 lambda 调用。
第三个帐户中的 lambda 是动态创建的,但我需要给它们一个我希望使用 CDK 创建的角色(我将使用第三个帐户信用来执行此操作 - 这里没有跨帐户的东西)。
我按照此处的说明进行操作- 使用 STS 调用 lambda 似乎很简单。我不完全清楚的是如何定义 cdk 中的第三个帐户角色。
这是我的堆栈:
export class ModuleIAMStack extends Stack {
constructor(scope: Construct, id: string, props?: StackProps) {
super(scope, id, props)
const lambdaModuleRole = new Role(this, 'moduleRole', {
roleName: 'moduleRole',
assumedBy: new AccountPrincipal({ accountId: '111111111' }),
managedPolicies: [ManagedPolicy.fromAwsManagedPolicyName('service-role/AWSLambdaBasicExecutionRole')] // My lambdas in 3X... will not need to access any resources so this should be enough to execute
})
}
}
Run Code Online (Sandbox Code Playgroud)
我就不清楚了assumedBy。是否AccountPrincipal正确输入?如果可以,我该如何输入 22222222 帐户?
AccountPrincipal将生成这样的主体:arn:aws:iam::123456789012:root。这足以允许整个帐户。
至于 CDK - 你已经快到了:
assumedBy: new iam.CompositePrincipal(
new iam.AccountPrincipal('111111111'),
new iam.AccountPrincipal('22222222')
),
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6539 次 |
| 最近记录: |