AWS IAM User assume IAM Role的示例代码

python 复制代码
import boto3

ACCESS_KEY_ID="xxxxxxxxxxxxx"
aws_secret_access_key = "xxxxxxxxxxxxx"

role_arn = 'arn:aws:iam::911111111111:role/xxxx-role'

session = boto3.Session(aws_access_key_id=ACCESS_KEY_ID,
                            aws_secret_access_key=SECRET_ACCESS_KEY,
                            region_name="us-east-1")

sts_client = session.client("sts")
#获取 IAM 用户的 temporary credentials
credentials = sts_client.assume_role(RoleArn=role_arn, RoleSessionName="a-session")

#使用 temporary credentials 创建一个 S3 client
s3_client = boto3.client("s3",
                         aws_access_key_id=credentials['Credentials']["AccessKeyId"],
                         aws_secret_access_key=credentials['Credentials']            ["SecretAccessKey"],
                        aws_session_token=credentials['Credentials']["SessionToken"])
s3_client.upload_file("filefullpath", "bucket-name-not-arn", "object_key")

一段示例代码,如何用Python boto3先使用某个IAM User的AK SK登陆sts。

然后继承某个IAM Role。

最后执行某个具体操作,比如代码中的 上传文件到S3 bucket。

相关推荐
SNOWPIAOP1 天前
Claude Code + CCR + AWS Bedrock 踩坑复盘:上下文超限、模型路由、Mantle 端点与 Qwen3 Coder Next
云计算·claude·aws·上下文·ccr
Flynt3 天前
AWS WorkMail + App Runner:服务退役时的迁移检查清单
app·aws
zhojiew4 天前
AWS云上ECS托管控制器场景服务部署策略实践和原理
云计算·aws
yunson_Liu4 天前
AWS EKS创建EFS存储类
云计算·aws
TG_yunshuguoji4 天前
亚马逊云代理商:如何在AWS上部署Hermes Agent?
人工智能·云计算·aws·hermes agent·hermes
TokenByte-AI导航小贴士5 天前
Claude 4.5 Sonnet / Opus / Haiku:新手选型指南
人工智能·ai·云计算·aigc·claude·aws
China_Yanhy5 天前
[Infra/SRE 知识库] AWS CloudFront API 边缘缓存配置与排障复盘
缓存·云计算·aws
有想法的py工程师5 天前
如何用 AWS CLI 判断 T 系列实例 CPU 不够(实战指南)
大数据·aws
SNOWPIAOP5 天前
WSL 下使用 Claude Code Router 将 VS Code Claude Code 指向 AWS Bedrock GLM-5 模型
云计算·claude·aws·ccr
有想法的py工程师5 天前
PostgreSQL 在AWS的 T 系列实例上的性能陷阱
数据库·postgresql·aws