如何使用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 - pip install boto3

步骤3 − 导入Boto3库。

步骤4 − 如果使用默认凭据创建会话,则使用无参数的Session()

步骤5 − 如果会话是自定义的,请传递以下参数:

  • aws_access_key_id (字符串) -- AWS访问密钥ID

  • aws_secret_access_key (字符串) -- AWS密钥

  • aws_session_token (字符串) -- AWS临时会话令牌

  • region_name (字符串) -- 创建新连接时的默认区域

  • profile_name (字符串) -- 要使用的配置文件的名称。如果未给出,则使用默认配置文件。

示例

以下代码为默认和自定义凭据创建AWS会话:

import boto3
# To create default session:
def create_aws_session():
session = boto3.session.Session()
#it creates the default session and can use to connect with any AWS service
   return session
print(create_aws_session())

# To Create customized 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)
   # Here, region_name and profile_name are optional parameters and default value is None
   Print(session)
return session

输出

#if default region_name is not present or NONE and region_name is not
passed in #credential file/calling parameter
Session(region_name=None)
Session(region_name=None)
#if default region_name is present and region_name is passed in
credential file/calling #parameter
Session(region_name=YOUR_REGION_NAME)
Session(region_name= YOUR_REGION_NAME)

更新于:2021年3月22日

5000+ 次浏览

启动您的职业生涯

通过完成课程获得认证

开始
广告
© . All rights reserved.