Estou usando a biblioteca python Boto 3 e desejo me conectar ao AWS CloudFront. Preciso especificar o Perfil AWS correto (credenciais AWS), mas olhando a documentação oficial, não vejo como especificá-lo.
Estou inicializando o cliente usando o código:
client = boto3.client('cloudfront')
No entanto, isso resulta em usar o perfil padrão para se conectar. Não consegui encontrar um método onde posso especificar qual perfil usar.
python
amazon-web-services
boto3
Nader A. Jabbar
fonte
fonte
client = boto3.client('s3', aws_access_key_id = '<access-key>', aws_secret_access_key = '<secret-key>')
Respostas:
Acho que os documentos não são maravilhosos em expor como fazer isso. No entanto, já é um recurso compatível há algum tempo e há alguns detalhes nesta solicitação de pull .
Portanto, existem três maneiras diferentes de fazer isso:
Opção A) Criar uma nova sessão com o perfil
Opção B) Alterar o perfil da sessão padrão no código
Opção C) Alterar o perfil da sessão padrão com uma variável de ambiente
fonte
dev.client('s3')
vez deboto3.client('s3')
ipython
também foi útil para mim.boto3.session.Session().available_profiles
- é uma lista. Em seguida, use o que você deseja @ jordan-phillips.Faça isso para usar um perfil com o nome 'dev':
fonte
Esta seção da documentação do boto3 é útil.
Aqui está o que funcionou para mim:
fonte
Basta adicionar o perfil à configuração da sessão antes da chamada do cliente.
boto3.session.Session(profile_name='YOUR_PROFILE_NAME').client('cloudwatch')
fonte