如何使用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+ 次瀏覽

啟動您的職業生涯

透過完成課程獲得認證

開始
廣告