"The config profile could not be found": impossibile trovare il profilo di configurazione
TL;DR — Il nome del profilo che stai utilizzando non esiste nei file di configurazione AWS che il tuo processo sta leggendo. Tre soliti sospetti: una variabile di ambiente AWS_PROFILE obsoleta, un errore di battitura in --profile/profile_name o il profilo definito nell'intestazione di sezione sbagliata: il file ~/.aws/config necessita di [profile myprofile], mentre ~/.aws/credentials utilizza il semplice [myprofile]. Esegui aws configure list-profiles e confronta.
Cosa significa
botocore.exceptions.ProfileNotFound: The config profile (myprofile) could not be foundPrima che qualsiasi chiamata DynamoDB possa essere firmata, l'SDK risolve un profilo di credenziali. Se un profilo è stato richiesto esplicitamente — tramite AWS_PROFILE, --profile o boto3.Session(profile_name=...) — e non esiste alcuna sezione con quel nome nei file di configurazione/credenziali letti, la risoluzione si interrompe con questo errore. Non è stato raggiunto nulla AWS; si tratta interamente di una ricerca di configurazione locale non riuscita.
Perché succede
AWS_PROFILEpunta a un profilo che non esiste: impostato in un file rc della shell, un'immagine del contenitore o una configurazione CI molto tempo fa, quindi il profilo è stato rinominato o rimosso.- Un errore di battitura o una mancata corrispondenza del caso: i nomi dei profili corrispondono esattamente.
- Sintassi errata dell'intestazione della sezione — in
~/.aws/configun profilo denominato deve essere dichiarato come[profile mioprofilo]; scrivere "[myprofile]" significa che la CLI/SDK non riesce a trovarlo (il formato semplice appartiene a "~/.aws/credentials"). - I file non si trovano dove appare il processo —
AWS_CONFIG_FILE/AWS_SHARED_CREDENTIALS_FILEche sovrascrive il percorso, una directory home diversa in sudo/a utente del servizio o un contenitore senza il montaggio~/.aws.
Come risolverlo
Elenca ciò che è effettivamente visibile nel tuo ambiente:
aws configure list-profiles env | grep -i '^AWS_'Correggi o annulla l'impostazione del puntatore —
unset AWS_PROFILE(o impostalo su un profilo elencato), correggi l'ortografia--profile/profile_name.Controlla le intestazioni delle sezioni:
# ~/.aws/config [profile myprofile] region = eu-west-1 # ~/.aws/credentials [myprofile] aws_access_key_id = ... aws_secret_access_key = ...Crea il profilo se non è mai esistito —
aws configure --profile myprofile(oaws configure ssoper i profili Identity Center).In contenitori/CI, preferisci le credenziali dell'ambiente o un ruolo rispetto ai file di profilo oppure monta/punta
AWS_CONFIG_FILEsu un file che definisce effettivamente il profilo.
Vedilo in DynoTable
DynoTable legge gli stessi file ~/.aws/credentials e ~/.aws/config della CLI: aggiungi profili in Impostazioni → Profili, scegli il nome del profilo dal menu a discesa ed esegui Test connessione per verificare che si risolva prima che lo faccia l'SDK. Il cambio di profilo (⌘P) rende evidente un AWS_PROFILE obsoleto quando le tabelle scompaiono.
Per Locale, crea un profilo con endpoint "http://localhost:8000" e credenziali fittizie. Consulta Connetti a AWS e Installa. Apri le tabelle con ⌘K una volta connesse, quindi esegui una query di prova del fumo nel Builder di query.
Fonti
- Impostazioni dei file di configurazione e credenziali nella AWS CLI (verificato il 13-07-2026)
- Configurazione delle variabili di ambiente per la AWS CLI (verificato il 13-07-2026)
Riproducilo
Punta boto3 su un profilo che non è nella tua configurazione, con l'ambiente AWS cancellato in modo che nient'altro soddisfi la ricerca:
import boto3
boto3.Session(profile_name='no-such-profile-xyz').client('dynamodb').list_tables()Produzione reale:
ProfileNotFound: The config profile (no-such-profile-xyz) could not be foundQuesto viene generato da botocore sul client, prima che qualsiasi richiesta raggiunga AWS, motivo per cui non esiste uno stato HTTP e perché riprovare non può essere d'aiuto. Il nome tra parentesi è il profilo cercato, quindi ti dice se l'errore di battitura è nel tuo codice o nel tuo file di configurazione.
Errori correlati
- Impossibile individuare le credenziali: nessuna credenziale trovata (nessun profilo esplicito coinvolto).
- Impossibile caricare le credenziali da qualsiasi provider: la versione JS-SDK dello stesso errore della catena.
- Sessione SSO scaduta: il profilo esiste ma il relativo accesso SSO è scaduto.
- Impara: Configurazione di DynamoDB Local e LocalStack
Riferimenti
- Impostazioni dei file di configurazione e credenziali nella AWS CLI — AWS Guida per l'utente della CLI
- Configurazione delle variabili di ambiente per la AWS CLI - Guida per l'utente della AWS CLI (AWS_PROFILE, AWS_CONFIG_FILE, AWS_SHARED_CREDENTIALS_FILE)
- Configurazione dell'autenticazione IAM Identity Center con la AWS CLI — Guida per l'utente della AWS CLI (aws configure sso)
Ultima verifica il 13-07-2026 rispetto alla documentazione ufficiale AWS collegata sopra.
Riprodotto il 26-07-2026 rispetto a boto3 1.43.56 / botocore 1.43.56 — l'output sopra è letterale.