Получение ролевых ARN дополнительных учетных записей из лямбда-функции AWS, запущенной в основной учетной записи, в AWS организациях - PullRequest
0 голосов
/ 03 августа 2020

У меня есть лямбда-функция, которая принимает на себя роли дополнительных учетных записей в AWS организациях. Лямбда находится в основной учетной записи. Мне нужно передать Role ARN роли, которая будет принята на эту лямбду. Как я могу этого добиться? Как я могу получить ролевые ARN ролей, находящихся в дополнительных учетных записях, из основной учетной записи, используя AWS Lambda?

1 Ответ

0 голосов
/ 04 августа 2020

Имя роли отличается в каждой учетной записи? Если имя роли такое же, вы можете использовать практически тот же ARN и просто вставить идентификатор учетной записи в строку для той учетной записи, которая вызывает функцию 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"
    )

Keep помните, что вам нужно будет правильно настроить разрешения для обеих ролей. Роль выполнения Lambda должна иметь разрешение на принятие роли с этим общим именем в любой учетной записи, а роли учетных записей участников должны позволять вашей роли выполнения Lambda принимать их в политике доверия.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...