Come funzionano le credenziali predefinite dell'applicazione

Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

In questa pagina vengono descritte le località in cui le credenziali predefinite dell'applicazione cercano le credenziali. Comprendere come funziona l'ADC può aiutarti a capire quali credenziali utilizza e perché ADC le trova.

ADC è una strategia utilizzata dalle librerie di autenticazione di Google per trovare automaticamente le credenziali in base all'ambiente dell'applicazione. Le librerie di autenticazione rendono quindi disponibili queste credenziali per le librerie client Cloud e le librerie client delle API di Google. Le librerie client utilizzano le credenziali per autenticarsi nelle API Google Cloud. Quando configuri l'ADC e utilizzi una libreria client, il codice può essere eseguito in un ambiente di sviluppo o di produzione senza modificare la modalità di autenticazione dell'applicazione ai servizi e alle API di Google Cloud.

Per informazioni sulle modalità migliori per fornire le credenziali ad ADC, consulta Fornire le credenziali per le credenziali predefinite dell'applicazione.

Cerca ordine

ADC cerca le credenziali nelle seguenti località:

  1. Variabile di ambiente GOOGLE_APPLICATION_CREDENTIALS
  2. Credenziali utente configurate con Google Cloud CLI
  3. L'account di servizio associato, come fornito dal server di metadati

Variabile di ambiente GOOGLE_APPLICATION_CREDENTIALS

Puoi utilizzare la variabile di ambiente GOOGLE_APPLICATION_CREDENTIALS per fornire la posizione di un file JSON delle credenziali. Questo file JSON può essere uno dei seguenti tipi:

  • Un file di configurazione delle credenziali per la federazione di Workload Identity

    La federazione delle identità per i carichi di lavoro consente di utilizzare un provider di identità esterno per accedere alle risorse Google Cloud. Per ulteriori informazioni, consulta la pagina relativa all'autenticazione tramite le librerie client, l'interfaccia a riga di comando gcloud o Terraform nella documentazione di Identity and Access Management (IAM).

  • Una chiave dell'account di servizio

    Le chiavi dell'account di servizio rappresentano un rischio per la sicurezza e non sono consigliate. A differenza degli altri tipi di file delle credenziali, le chiavi dell'account di servizio compromesse possono essere utilizzate da un utente malintenzionato senza ulteriori informazioni. Per saperne di più, consulta Best practice per l'utilizzo e la gestione delle chiavi degli account di servizio.

Credenziali utente configurate con l'interfaccia a riga di comando gcloud

Puoi configurare ADC in modo che utilizzi le credenziali del tuo Account Google eseguendo il comando gcloud auth application-default login. Questo comando inserisce un file JSON contenente le tue credenziali in una posizione nota nel tuo file system. La località dipende dal tuo sistema operativo:

  • Linux, macOS: $HOME/.config/gcloud/application_default_credentials.json
  • Windows: %APPDATA%\gcloud\application_default_credentials.json

Per ulteriori informazioni sull'utilizzo dell'interfaccia a riga di comando gcloud e dell'ADC, consulta Tipi di credenziali gcloud.

L'account di servizio associato

Molti servizi Google Cloud consentono di collegare un account di servizio utilizzabile per fornire le credenziali per l'accesso alle API Google Cloud. Se ADC non trova le credenziali che può utilizzare nella variabile di ambiente GOOGLE_APPLICATION_CREDENTIALS o nella posizione nota per le credenziali dell'Account Google, utilizza il server di metadati per ottenere le credenziali per il servizio in cui è in esecuzione il codice.

Se la tua applicazione è in esecuzione su una risorsa Google Cloud che supporta il collegamento di un account di servizio, devi utilizzare l'account di servizio associato per fornire le credenziali. Per utilizzare l'account di servizio associato:

  1. Creare un account di servizio gestito dall'utente.
  2. Concedi a tale account di servizio i ruoli IAM con i privilegi minimi.
  3. Collega l'account di servizio alla risorsa in cui viene eseguito il codice.

Questa configurazione è consigliata per le applicazioni in esecuzione in produzione.

Per informazioni su come collegare un account di servizio, consulta Collegamento di un account di servizio a una risorsa. Per assistenza su come determinare i ruoli IAM richiesti per il tuo account di servizio, consulta Scegliere i ruoli predefiniti.

Passaggi successivi