The config profile could not be found

TL;DR — O nome de profile que você está usando não existe nos arquivos de config da AWS que o seu processo está lendo. Três suspeitos de sempre: uma variável de ambiente AWS_PROFILE obsoleta, um erro de digitação em --profile/profile_name, ou o profile definido sob o cabeçalho de seção errado — o arquivo ~/.aws/config precisa de [profile myprofile], enquanto ~/.aws/credentials usa [myprofile] simples. Rode aws configure list-profiles e compare.

O que significa

botocore.exceptions.ProfileNotFound: The config profile (myprofile) could not be found

Antes que qualquer chamada ao DynamoDB possa ser assinada, o SDK resolve um profile de credenciais. Se um profile foi explicitamente solicitado — via AWS_PROFILE, --profile ou boto3.Session(profile_name=...) — e nenhuma seção com esse nome existe nos arquivos de config/credentials que estão sendo lidos, a resolução para com este erro. Nada chegou à AWS; é inteiramente uma busca de configuração local que falha.

Por que acontece

  • AWS_PROFILE aponta para um profile que não existe — definido em um arquivo rc de shell, uma imagem de contêiner ou config de CI há muito tempo, e depois o profile foi renomeado ou removido.
  • Um erro de digitação ou diferença de maiúsculas — nomes de profile são comparados exatamente.
  • Sintaxe de cabeçalho de seção errada — em ~/.aws/config um profile nomeado precisa ser declarado como [profile myprofile]; escrever [myprofile] ali significa que a CLI/SDK não consegue encontrá-lo (a forma simples pertence a ~/.aws/credentials).
  • Os arquivos não estão onde o processo procuraAWS_CONFIG_FILE/AWS_SHARED_CREDENTIALS_FILE sobrescrevendo o caminho, um diretório home diferente sob sudo/um usuário de serviço, ou um contêiner sem o mount de ~/.aws.

Como corrigir

  1. Liste o que está realmente visível para o seu ambiente:

    aws configure list-profiles
    env | grep -i '^AWS_'
  2. Corrija ou remova o ponteirounset AWS_PROFILE (ou defina-o para um profile listado), corrija a grafia de --profile/profile_name.

  3. Confira os cabeçalhos de seção:

    # ~/.aws/config
    [profile myprofile]
    region = eu-west-1
    
    # ~/.aws/credentials
    [myprofile]
    aws_access_key_id = ...
    aws_secret_access_key = ...
  4. Crie o profile se ele nunca existiuaws configure --profile myprofile (ou aws configure sso para profiles do Identity Center).

  5. Em contêineres/CI, prefira credenciais de ambiente ou uma role em vez de arquivos de profile — ou monte/aponte AWS_CONFIG_FILE para um arquivo que realmente defina o profile.

Depois que o profile resolver, verifique se ele realmente alcança suas tabelas — o app desktop DynoTable usa seus profiles da AWS para conectar e torna visível "qual profile enxerga quais tabelas", e a calculadora de preços do DynamoDB ajuda a planejar quanto custa a carga de trabalho daquela conta.

Erros relacionados

Referências

Verificado pela última vez em 2026-07-13 contra a documentação oficial da AWS vinculada acima.

Trabalhe com o DynamoDB sem o Console

O DynoTable é um cliente desktop rápido para o DynamoDB — navegue pelas tabelas, execute consultas no estilo SQL e edite itens localmente.