从AWS组织中主帐户中运行的AWS lambda函数中检索子帐户的角色ARN



我有一个lambda函数,它承担AWS组织中子帐户的角色。lambda驻留在主帐户中。我需要将要承担的角色的角色ARN传递给这个lambda。我怎样才能做到这一点?如何使用AWS Lambda从主帐户检索子帐户中角色的角色ARN?

每个帐户的角色名称是否不同?如果角色的名称相同,则可以使用基本相同的ARN,只需将帐户ID插入调用Lambda函数的帐户的字符串中。我不确定这是否回答了你的问题,但如果这是你想要做的,你的Lambda函数代码可能看起来像这样(使用Python和boto3(:

def lambda_handler(event, context):
roleARN = 'arn:aws:iam::'+event['accountId']+':role/your_role_name'
sts_connection = boto3.client('sts')
# Assume the role in member accounts
acct_b = sts_connection.assume_role(
RoleArn=roleARN,
RoleSessionName="session_name"
)

请记住,您需要为这两个角色正确设置权限。Lambda执行角色需要具有在任何帐户中使用该通用名称的角色的权限,而成员帐户角色需要允许您的Lambda执行任务在信任策略中使用它们。

最新更新