如何在 Python 中使用 Boto3 库创建 AWS 会话?
当用户想要使用lambda或编程代码使用AWS服务时,需要先设置会话以访问AWS服务。
AWS会话可以是默认的,也可以是根据需要自定义的。
问题陈述-在Python中使用Boto3库创建AWS会话。
解决这个问题的方法/算法
步骤1-要创建AWS会话,首先设置身份验证凭证。用户可以在IAM控制台中找到它,或者手动创建凭证文件。默认情况下,它的位置在~/.aws/credentials
例子
[default] aws_access_key_id = YOUR_ACCESS_KEY aws_secret_access_key = YOUR_SECRET_ACCESS_KEY aws_session_token = YOUR_SESSION_TOKEN region = REGION_NAME
步骤2-使用命令 安装Boto3-pipinstallboto3
第3步-导入Boto3库。
步骤4-如果使用默认凭据创建会话Session(),请不带参数使用。
步骤5-如果会话是自定义的,请传递以下参数-
aws_access_key_id(string)--AWS访问密钥ID
aws_secret_access_key(string)--AWS秘密访问密钥
aws_session_token(string)--AWS临时会话令牌
region_name(string)--创建新连接时的默认区域
profile_name(string)--要使用的配置文件的名称。如果未给出,则使用默认配置文件。
示例
以下代码为默认和自定义凭证创建一个AWS会话-
import boto3 #创建默认会话: def create_aws_session(): session = boto3.session.Session() #它创建默认会话并可用于连接任何AWS服务 return session print(create_aws_session()) #创建自定义会话: def create_customized_session(aws_access_key, aws_secret_key, aws_token, region_name=None,profile_name=None): session = boto3.session.Session(aws_access_key_id=aws_access_key, aws_secret_access_key=aws_secret_key, aws_session_token = aws_token, region_name=region_name, profile_name = profile_name) #这里region_name和profile_name是可选参数,默认值为None Print(session) return session输出结果
#如果默认region_name不存在或NONE和region_name不存在 passed in #凭证文件/调用参数 Session(region_name=None) Session(region_name=None) #如果存在默认region_name并且传入region_name credential file/calling #parameter Session(region_name=YOUR_REGION_NAME) Session(region_name= YOUR_REGION_NAME)