Computer >> Máy Tính >  >> Lập trình >> Python

Cách tạo phiên AWS bằng thư viện Boto3 trong Python?

Khi người dùng muốn sử dụng các dịch vụ AWS bằng lambda hoặc mã lập trình, trước tiên cần thiết lập một phiên để truy cập các dịch vụ AWS.

Một phiên AWS có thể là mặc định cũng như được tùy chỉnh dựa trên nhu cầu.

Tuyên bố sự cố - Sử dụng thư viện Boto3 bằng Python để tạo phiên AWS.

Phương pháp tiếp cận / Thuật toán để giải quyết vấn đề này

Bước 1 - Để tạo phiên AWS, trước tiên hãy thiết lập thông tin xác thực. Người dùng có thể tìm thấy nó trong bảng điều khiển IAM hoặc cách khác, tạo tệp thông tin xác thực theo cách thủ công. Theo mặc định, vị trí của nó là tại ~ / .aws / credentials

Ví dụ

[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

Bước 2 - Cài đặt Boto3 bằng lệnh - pip install boto3

Bước 3 - Nhập thư viện Boto3.

Bước 4 - Nếu tạo phiên bằng thông tin xác thực mặc định, hãy sử dụng Phiên () không có tham số.

Bước 5 - Nếu phiên được tùy chỉnh, hãy chuyển các thông số sau -

  • aws_access_key_id (string) - ID khóa truy cập AWS

  • aws_secret_access_key (string) - Khóa truy cập bí mật AWS

  • aws_session_token (chuỗi) - Mã thông báo phiên tạm thời AWS

  • region_name (string) - Vùng mặc định khi tạo kết nối mới

  • profile_name (string) - Tên của một cấu hình sẽ sử dụng. Nếu không được cung cấp, thì cấu hình mặc định sẽ được sử dụng.

Ví dụ

Đoạn mã sau tạo một phiên AWS cho thông tin đăng nhập mặc định cũng như tùy chỉnh -

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

Đầu ra

#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)