Python 使用boto3从主帐户列出子帐户的资源?
我正在使用python和boto3列出我的组织拥有的资源。我列出了主帐户中的资源,没有问题,但我还需要列出子帐户中的资源。我可以得到孩子的账号,但基本上就是这样Python 使用boto3从主帐户列出子帐户的资源?,python,amazon-web-services,boto3,aws-organizations,Python,Amazon Web Services,Boto3,Aws Organizations,我正在使用python和boto3列出我的组织拥有的资源。我列出了主帐户中的资源,没有问题,但我还需要列出子帐户中的资源。我可以得到孩子的账号,但基本上就是这样 有帮助吗?您需要访问属于子帐户的一组凭据 import boto3 role_info = { 'RoleArn': 'arn:aws:iam::<AWS_ACCOUNT_NUMBER>:role/<AWS_ROLE_NAME>', 'RoleSessionName': '<SOME_SE
有帮助吗?您需要访问属于子帐户的一组凭据
import boto3
role_info = {
'RoleArn': 'arn:aws:iam::<AWS_ACCOUNT_NUMBER>:role/<AWS_ROLE_NAME>',
'RoleSessionName': '<SOME_SESSION_NAME>'
}
client = boto3.client('sts')
credentials = client.assume_role(**role_info)
session = boto3.session.Session(
aws_access_key_id=credentials['Credentials']['AccessKeyId'],
aws_secret_access_key=credentials['Credentials']['SecretAccessKey'],
aws_session_token=credentials['Credentials']['SessionToken']
)
发件人:
使用AWS组织控制台创建成员帐户时,AWS组织会自动在帐户中创建IAM角色。此角色在成员帐户中具有完全管理权限。该角色还配置为授予对组织主帐户的访问权限
若要使用此角色访问成员帐户,您必须以具有承担该角色权限的主帐户的用户身份登录
因此,您可以在子帐户中担任IAM角色,然后提供一组临时凭证,可与bot3
一起使用,以对子帐户进行API调用
import boto3
role_info = {
'RoleArn': 'arn:aws:iam::<AWS_ACCOUNT_NUMBER>:role/<AWS_ROLE_NAME>',
'RoleSessionName': '<SOME_SESSION_NAME>'
}
client = boto3.client('sts')
credentials = client.assume_role(**role_info)
session = boto3.session.Session(
aws_access_key_id=credentials['Credentials']['AccessKeyId'],
aws_secret_access_key=credentials['Credentials']['SecretAccessKey'],
aws_session_token=credentials['Credentials']['SessionToken']
)
像这样使用它:
session = boto3.session.Session(profile_name='dev')
s3 = session.client('s3')
见: