The config profile could not be found

En bref — Le nom de profil que tu utilises n'existe pas dans les fichiers de config AWS que ton processus lit. Trois suspects habituels : une variable d'environnement AWS_PROFILE obsolète, une faute de frappe dans --profile/profile_name, ou le profil défini sous le mauvais en-tête de section — le fichier ~/.aws/config a besoin de [profile myprofile], tandis que ~/.aws/credentials utilise simplement [myprofile]. Lance aws configure list-profiles et compare.

Ce que ça signifie

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

Avant qu'un appel DynamoDB puisse être signé, le SDK résout un profil d'identifiants. Si un profil a été explicitement demandé — via AWS_PROFILE, --profile ou boto3.Session(profile_name=...) — et qu'aucune section portant ce nom n'existe dans les fichiers config/credentials lus, la résolution s'arrête avec cette erreur. Rien n'a atteint AWS ; c'est entièrement une recherche de configuration locale qui échoue.

Pourquoi ça arrive

  • AWS_PROFILE pointe vers un profil qui n'existe pas — défini dans un fichier rc du shell, une image de conteneur ou une config CI il y a longtemps, puis le profil a été renommé ou supprimé.
  • Une faute de frappe ou une casse différente — les noms de profil sont comparés exactement.
  • Mauvaise syntaxe d'en-tête de section — dans ~/.aws/config, un profil nommé doit être déclaré comme [profile myprofile] ; écrire [myprofile] là-bas signifie que la CLI/le SDK ne peut pas le trouver (la forme simple appartient à ~/.aws/credentials).
  • Les fichiers ne sont pas là où le processus regardeAWS_CONFIG_FILE/AWS_SHARED_CREDENTIALS_FILE surchargeant le chemin, un répertoire personnel différent sous sudo/un utilisateur de service, ou un conteneur sans le montage ~/.aws.

Comment corriger

  1. Liste ce qui est réellement visible pour ton environnement :

    aws configure list-profiles
    env | grep -i '^AWS_'
  2. Corrige ou supprime le pointeurunset AWS_PROFILE (ou définis-le sur un profil listé), corrige l'orthographe de --profile/profile_name.

  3. Vérifie les en-têtes de section :

    # ~/.aws/config
    [profile myprofile]
    region = eu-west-1
    
    # ~/.aws/credentials
    [myprofile]
    aws_access_key_id = ...
    aws_secret_access_key = ...
  4. Crée le profil s'il n'a jamais existéaws configure --profile myprofile (ou aws configure sso pour les profils Identity Center).

  5. Dans les conteneurs/CI, préfère les identifiants d'environnement ou un rôle plutôt que les fichiers de profil — ou monte/pointe AWS_CONFIG_FILE vers un fichier qui définit réellement le profil.

Une fois le profil résolu, vérifie qu'il peut réellement atteindre tes tables — l'application de bureau DynoTable utilise tes profils AWS pour se connecter et rend visible « quel profil voit quelles tables », et le calculateur de tarification DynamoDB aide à planifier le coût de la charge de travail de ce compte.

Erreurs liées

Références

Dernière vérification le 2026-07-13 par rapport à la documentation officielle AWS liée ci-dessus.

Travaille avec DynamoDB sans la Console

DynoTable est un client de bureau rapide pour DynamoDB — parcours les tables, exécute des requêtes de style SQL et édite les items en local.