in Back-End/lambdas/receive_sqs_message.py [0:0]
def get_all_iam_roles(account_number, cross_account_role):
# Init
var_list = []
# Use boto3 on source account
client_iam = create_boto_client(
account_number, 'us-east-1', 'iam', cross_account_role)
# Page roles
paginator = client_iam.get_paginator('list_roles')
for page in paginator.paginate():
for i in page['Roles']:
role_name = i['RoleName']
# Get Tags for Role
try:
print(f'Getting Tags for: {role_name}...')
tags = client_iam.list_role_tags(RoleName=role_name)['Tags']
except ClientError as e:
tags = 'No Tags Exist'
var_list.append(
{
'Id': str(i['Arn']),
'EntryType': 'iam-roles',
'Region': 'us-east-1',
'AccountNumber': str(account_number),
'Link': str(f"https://console.aws.amazon.com/iam/home?region=us-east-1#/roles/{role_name}"),
'Tags': str(tags),
'RoleName': str(role_name),
'CreateDate': str(i['CreateDate'])
})
return var_list