Python 使用cdk从帐户B中的lambda调用帐户A中的步骤函数
我在帐户a中部署了一个lambda堆栈,在帐户B中部署了一个stepfunction堆栈部署器。现在我如何使用python cdk从lambda调用这个stepfunction?具体来说,我需要授予他们什么权限?lambda帐户A已分配IAM roleRoleA。步骤功能帐户B已分配IAM角色角色B 权限 lambda的IAM角色应具有从帐户B承担该角色的权限Python 使用cdk从帐户B中的lambda调用帐户A中的步骤函数,python,amazon-web-services,aws-lambda,aws-cdk,aws-step-functions,Python,Amazon Web Services,Aws Lambda,Aws Cdk,Aws Step Functions,我在帐户a中部署了一个lambda堆栈,在帐户B中部署了一个stepfunction堆栈部署器。现在我如何使用python cdk从lambda调用这个stepfunction?具体来说,我需要授予他们什么权限?lambda帐户A已分配IAM roleRoleA。步骤功能帐户B已分配IAM角色角色B 权限 lambda的IAM角色应具有从帐户B承担该角色的权限 { "Version": "2012-10-17", "Statement&q
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "sts:AssumeRole",
"Resource": "*"
}
]
}
步骤功能IAM roleRole B应具有允许Lambda的IAM角色承担此任务的受信任策略。在以下信任策略中,123456789012是帐户A的帐号
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": [
"arn:aws:iam::123456789012:root"
]
},
"Action": "sts:AssumeRole"
}
]
}
在lambda内部
lambda应该具有从帐户B获取角色B并获取临时凭据的代码
使用这些凭证,lambda应该调用step函数
如果要在cdk部署发生时触发某些事件: 这似乎是一个奇怪的用例,但我认为这里的解决方案是定义一个自定义资源。 cdk和cloudformation都支持: 因为您使用的是自定义资源,所以需要自己进一步处理创建、更新和删除事件。同样,发送完成响应,我建议您使用cfnresponsemodule发回完成响应,否则cdk将无法判断您的自定义资源功能何时完成: