- AWSにPythonでアクセスする際、デフォルトプ以外のprofileを使用する方法
- boto3のSessionを使用
- 複数のAWS環境があり、自分の開発環境から、コードでアクセスしたい時(ツールの実行など)に便利
記法
【変数A】 = boto3.Session(profile_name=【プロファイル名】)
【変数B】 = 【変数A】.client('【AWSサービス】')
-
一度
Session
でprofileを呼び出した後に、そのSessionでclientやresourceを呼び出すイメージ -
これ以降は通常の使用方法と同じで利用可能
-
例えば、S3Clientを使用したい場合は以下のようになる
- 【変数A】【変数B】にも適当な文字を設定した
session = boto3.Session(profile_name=【プロファイル名】) s3_client = session.client('s3')
- 【変数A】【変数B】にも適当な文字を設定した
サンプルコード
- Sessionを使用して、S3にアクセスする場合
import boto3
# 使用するプロファイル名を指定
profile_name = '【profile名】'
# セッションを作成
session = boto3.Session(profile_name=profile_name)
# S3クライアントを作成
s3_client = session.client('s3')
# S3バケットのリストを取得
buckets = s3_client.list_buckets()
コメント