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。

相关推荐
yyuuuzz2 天前
谷歌云使用的几个常见注意事项
运维·服务器·网络·安全·web安全·云计算·aws
zhojiew2 天前
在AWS中国区的EMR集群中实现基于向量语义搜索的HBase运维诊断系统
运维·hbase·aws
yyuuuzz2 天前
独立开发者线上服务运维的几点实践经验
运维·服务器·网络·云计算·aws
zhojiew2 天前
使用DBT(data build tool)集成AWS Athena完成数据处理的实践
云计算·aws
yyuuuzz3 天前
aws的核心概念与常见使用场景
运维·服务器·网络·云计算·aws
zhojiew4 天前
在AWS云上使用EC2 嵌套虚拟化实例部署Cube Sandbox的实践和问题
云计算·aws
yyuuuzz5 天前
国际云服务器的技术特点与使用经验
运维·服务器·网络·数据库·云计算·aws
我是小邵6 天前
从 Supabase 迁移到 AWS 的云架构演进实践
架构·云计算·aws
炸裂狸花猫6 天前
开源身份认证与访问管理平台 - Keycloak(三)公有云Console集成实践(AWS / 阿里云 / OCI)
阿里云·云原生·keycloak·aws·oci·sso
xixixi777776 天前
AI的“账号”与“钱包”:AWS与Circle同日出手,AI正从工具进化
人工智能·安全·ai·大模型·云计算·aws