in Back-End/lambdas/receive_sqs_message.py [0:0]
def get_all_iam_users(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 users
paginator = client_iam.get_paginator('list_users')
for page in paginator.paginate():
for i in page['Users']:
username = i['UserName']
# Get Tags for User
try:
print(f'Getting Tags for: {username}...')
tags = client_iam.list_user_tags(UserName=username)['Tags']
except ClientError as e:
tags = 'No Tags Exist'
var_list.append(
{
'Id': str(i['Arn']),
'EntryType': 'iam-users',
'AccountNumber': str(account_number),
'Region': 'us-east-1',
'Link': str(f"https://console.aws.amazon.com/iam/home?region=us-east-1#/users/{username}"),
'UserName': str(username),
'Tags': str(tags),
'PasswordLastUsed': str(i.get('PasswordLastUsed', ' ')),
'CreateDate': str(i['CreateDate'])
})
return var_list