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 foundAvant 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_PROFILEpointe 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 regarde —
AWS_CONFIG_FILE/AWS_SHARED_CREDENTIALS_FILEsurchargeant le chemin, un répertoire personnel différent sous sudo/un utilisateur de service, ou un conteneur sans le montage~/.aws.
Comment corriger
Liste ce qui est réellement visible pour ton environnement :
aws configure list-profiles env | grep -i '^AWS_'Corrige ou supprime le pointeur —
unset AWS_PROFILE(ou définis-le sur un profil listé), corrige l'orthographe de--profile/profile_name.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 = ...Crée le profil s'il n'a jamais existé —
aws configure --profile myprofile(ouaws configure ssopour les profils Identity Center).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_FILEvers 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
- Unable to locate credentials — aucun identifiant trouvé du tout (aucun profil explicite en jeu).
- Could not load credentials from any providers — la variante JS-SDK du même échec de chaîne.
- SSO session expired — le profil existe mais sa connexion SSO a expiré.
- Apprends : DynamoDB Local & LocalStack setup
Références
- Configuration and credential file settings in the AWS CLI — AWS CLI User Guide
- Configuring environment variables for the AWS CLI — AWS CLI User Guide (AWS_PROFILE, AWS_CONFIG_FILE, AWS_SHARED_CREDENTIALS_FILE)
- Configuring IAM Identity Center authentication with the AWS CLI — AWS CLI User Guide (aws configure sso)
Dernière vérification le 2026-07-13 par rapport à la documentation officielle AWS liée ci-dessus.