porylo
4/24/2020 - 11:03 AM

boto3

Boto3 setup session with aws credentials file on Windows

source: https://boto3.amazonaws.com/v1/documentation/api/latest/guide/configuration.html?fbclid=IwAR2LlrS4O2gYH6xAF4QDVIH2Q2tzfF_VZ6loM3XfXsPAOR4qA-pX_qAILys

session = boto3.Session(profile_name='dev')

Any clients created from this session will use credentials from the [dev] section of ~/.aws/credentials.

dev_s3_client = session.client('s3')

Boto3 session with explicit keys

import boto3
session = boto3.Session(
    aws_access_key_id=settings.AWS_SERVER_PUBLIC_KEY,
    aws_secret_access_key=settings.AWS_SERVER_SECRET_KEY,
)

Boto3 setup client with explicit keys

import boto3
import pprint

s3_client = boto3.client(
    's3',
    # Hard coded strings as credentials, not recommended.
    aws_access_key_id='<key_value>',
    aws_secret_access_key='<key_value>'
)

for key in s3_client.list_objects(Bucket='<bucket_name>')['Contents']:
    print(key['Key'])

ec2_client = boto3.client(
    'ec2',
    # Hard coded strings as credentials, not recommended.
    aws_access_key_id='<key_value>',
    aws_secret_access_key='<key_value>'
)
pprint.pprint(ec2_client.describe_instances())