Amazon会话令牌是一种用于访问Amazon Web Services(AWS)的安全令牌。它可以用来代替AWS访问密钥ID和访问密钥秘密访问AWS API。使用AWS会话令牌可以增强AWS安全性,尤其是在使用身份验证时。以下是使用AWS会话令牌的Python示例代码:
import boto3
# 创建会话
session = boto3.Session()
# 获取AWS临时凭证
sts_client = session.client('sts')
assumed_role_object = sts_client.assume_role(
RoleArn="arn:aws:iam::123456789012:role/MyRoleName",
RoleSessionName="AssumeRoleSession1"
)
credentials = assumed_role_object['Credentials']
# 使用会话令牌创建S3客户端
s3_client = session.client(
's3',
aws_access_key_id=credentials['AccessKeyId'],
aws_secret_access_key=credentials['SecretAccessKey'],
aws_session_token=credentials['SessionToken']
)
# 使用S3客户端上传文件
s3_client.upload_file('file_to_upload.png', 'my-s3-bucket', 'key')