Per accedere a Google Cloud, in genere è necessario autorizzare Google Cloud CLI. Questa pagina dimostra la disponibilità le opzioni di autorizzazione e ti mostra come gestire autorizzazione. Se utilizzi un'istanza Compute Engine o Cloud Shell, non è necessario autorizzare la CLI gcloud.
Tipi di account
Per concedere l'autorizzazione alla CLI gcloud per accedere a Google Cloud, puoi utilizzare un account utente o un account di servizio.
Un account utente è un account Google Cloud che consente agli utenti finali di: eseguire l'autenticazione nella tua applicazione. Per la maggior parte dei casi d'uso comuni, in particolare per l'utilizzo interattivo dell'interfaccia a riga di comando gcloud, è consigliabile utilizzare un account utente.
Un account di servizio è un account Google Cloud associato al tuo un progetto Google Cloud e non un utente specifico. Puoi utilizzare l'account di servizio integrato disponibile quando utilizzi funzioni Cloud Run, App Engine, Compute Engine o Google Kubernetes Engine. È consigliabile un account di servizio per eseguire gcloud CLI su più computer.
Scegli un tipo di autorizzazione
Devi autorizzare Google Cloud CLI a gestire le risorse di Google Cloud. Sia Google Cloud CLI sia Google Cloud utilizzano OAuth 2.0 per l'autenticazione e l'autorizzazione.
Scegli uno dei seguenti tipi di autorizzazione:
Tipo | Descrizione |
---|---|
Account utente | Consigliato se utilizzi l'interfaccia a riga di comando gcloud dalla riga di comando o se scrivi script con l'interfaccia a riga di comando gcloud da utilizzare su una singola macchina. |
Service account | Opzione consigliata se installi e configuri gcloud CLI
nell'ambito del processo di deployment di una macchina in produzione o per l'uso
Istanze di macchine virtuali Compute Engine a cui hanno accesso tutti gli utenti
a root . |
Per ulteriori informazioni sull'autenticazione e su Google Cloud, consulta Panoramica dell'autenticazione.
Autorizza con un account utente
Utilizza i seguenti comandi gcloud CLI per autorizzare l'accesso con un account utente:
Comando | Descrizione |
---|---|
gcloud init
|
Autorizza l'accesso ed esegue altri passaggi di configurazione comuni. |
gcloud auth login
|
Consente solo l'accesso. |
Durante l'autorizzazione, questi comandi ottengono le credenziali dell'account in Google Cloud e archiviarle nel sistema locale. L'account specificato diventa l'account attivo nella tua configurazione. gcloud CLI utilizza le credenziali archiviate per accedere in Google Cloud. Puoi avere qualsiasi numero di account con per una singola installazione di gcloud CLI, ma solo una attivo alla volta.
Run gcloud init
gcloud init
autorizza l'accesso ed esegue
altri passaggi di configurazione comuni. gcloud init
utilizza un flusso di autorizzazione basato sul web per autenticare l'account utente e concedere le autorizzazioni di accesso.
Per autorizzare l'accesso ed eseguire altri passaggi di configurazione comuni:
Esegui
gcloud init
:gcloud init
In alternativa, per impedire al comando di aprire automaticamente un browser web:
gcloud init --console-only
L'utilizzo del flag
--console-only
è utile se esegui il comando su un sistema remoto utilizzandossh
e non hai accesso a un browser su quel sistema. Dovrai poi aprire manualmente l'URL fornito in un browser sul tuo sistema locale per completare il processo di autorizzazione.Segui la procedura di autorizzazione basata sul browser per autenticare l'account e concedere le autorizzazioni di accesso.
Per ulteriori informazioni su gcloud init
, consulta
Inizializza l'interfaccia a riga di comando gcloud.
Esegui gcloud auth login
L'esecuzione di gcloud auth login
autorizza solo l'account utente.
Per autorizzare l'accesso senza eseguire altri passaggi di configurazione, utilizza una delle seguenti opzioni.
Se vuoi autorizzare gcloud CLI su una macchina con un segui questa procedura.
Autorizza gcloud CLI:
gcloud auth login
Segui la procedura di autorizzazione basata sul browser per autenticare l'account e concedere le autorizzazioni di accesso.
Se vuoi autorizzare l'interfaccia a riga di comando gcloud su una macchina che non ha un browser e puoi installarla su un'altra macchina con un browser, utilizza il flag
--no-browser
.Autorizza gcloud CLI:
gcloud auth login --no-browser
Copia il comando lungo che inizia con
gcloud auth login --remote-bootstrap="
.Incolla ed esegui questo comando sulla riga di comando di un altro in cui sono installate installazioni locali sia di un browser web che strumento gcloud CLI versione 372.0 o successive.
Copia l'URL lungo in uscita dalla macchina con il browser web.
Incolla l'URL lungo nella prima macchina sotto il prompt "Invio l'output del comando precedente" e premi Invio per completare autorizzazione.
Se vuoi autorizzare gcloud CLI su una macchina non dispone di un browser e non puoi installare gcloud CLI su un'altra macchina con un browser, usa il flag
--no-launch-browser
. Il--no-launch-browser
impedisce al comando di aprire automaticamente un browser web.Autorizza l'interfaccia a riga di comando gcloud:
gcloud auth login --no-launch-browser
Copia l'URL lungo che inizia con
https://accounts.google.com/o/oauth2/auth...
Incolla questo URL nel browser di un'altra macchina attendibile con un browser web.
Copia il codice di autorizzazione dalla macchina con il browser web.
Incolla il codice di autorizzazione nella prima macchina quando richiesto, "Inserisci il codice di verifica", e premi Invio per completare l'autorizzazione.
Se hai già un token di accesso, utilizza uno dei seguenti metodi per trasmetterlo all'interfaccia a riga di comando gcloud:
- Archiviare il token di accesso in un file e impostarne il percorso tramite la --access-token-file flag.
- Archiviare il token di accesso in un file e impostarne il percorso nel auth/access_token_file proprietà.
- Imposta la variabile di ambiente
CLOUDSDK_AUTH_ACCESS_TOKEN
su il valore del token di accesso.
Autorizzazione con un account di servizio
Il comando gcloud auth login
può autorizzare l'accesso con un account di servizio utilizzando un file delle credenziali memorizzato nel file system locale. Questa credenziale può essere una credenziale utente con autorizzazione
per rappresentare l'account di servizio, un file di configurazione delle credenziali
federazione delle identità per i carichi di lavoro o una
chiave dell'account di servizio.
Autorizza un account di servizio utilizzando la simulazione dell'identità degli account di servizio
Per autorizzare la gcloud CLI utilizzare credenziali dell'account di servizio impersonato, segui questi passaggi:
Nella console Google Cloud, vai alla pagina Account di servizio.
Scegli un account esistente o creane uno nuovo facendo clic su Crea dell'account di servizio.
-
Per garantire che l'entità abbia gli elementi necessari l'autorizzazione a impersonare un account di servizio, chiedi all'amministratore di concedere all'entità Ruolo IAM Creatore token account di servizio (
roles/iam.serviceAccountTokenCreator
) nell'account di servizio. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.Questo ruolo predefinito contiene l'autorizzazione
iam.serviceAccounts.getAccessToken
necessaria per impersonare un account di servizio.L'amministratore potrebbe anche essere in grado di fornire all'entità questa autorizzazione con ruoli personalizzati altri ruoli predefiniti.
Autorizza gcloud CLI con la tua identità utente eseguendo
gcloud auth login
.Per configurare gcloud CLI in modo da utilizzare l'identità fornito da un account di servizio per impostazione predefinita, utilizza Comando gcloud CLI config:
gcloud config set auth/impersonate_service_account SERVICE_ACCT_EMAIL
Per interrompere l'utilizzo delle credenziali dell'account di servizio impersonato con gcloud CLI per impostazione predefinita, annulla l'impostazione del flag con Comando gcloud CLI config:
gcloud config unset auth/impersonate_service_account
Autorizza un account di servizio utilizzando la federazione delle identità per i carichi di lavoro
Per autorizzare gcloud CLI con un account di servizio utilizzando delle credenziali della federazione delle identità per i carichi di lavoro:
Nella console Google Cloud, vai alla pagina Account di servizio.
Scegli un account esistente o creane uno nuovo facendo clic su Crea dell'account di servizio.
Crea un file di configurazione delle credenziali per la federazione delle identità per i carichi di lavoro seguendo le indicazioni per il provider di identità supportato.
Per attivare l'account di servizio, esegui
gcloud auth login
con il--cred-file
flag:gcloud auth login --cred-file=CONFIGURATION_FILE
Sostituisci CONFIGURATION_FILE con il percorso di un file di configurazione credenziali per la federazione delle identità per i carichi di lavoro.
Autorizzare un account di servizio utilizzando una chiave dell'account di servizio
Per autorizzare la CLI gcloud con un account di servizio utilizzando una chiave dell'account di servizio:
Nella console Google Cloud, vai alla pagina Account di servizio.
Scegli un account esistente o creane uno nuovo facendo clic su Crea account di servizio.
Per creare chiavi dell'account di servizio, consulta le istruzioni di IAM per creare una chiave dell'account di servizio.
Per attivare l'account di servizio, esegui
gcloud auth login
con Flag--cred-file
:gcloud auth login --cred-file=KEY_FILE
Sostituisci KEY_FILE con il percorso di un file della chiave dell'account di servizio.
Elenco account
Per elencare gli account le cui credenziali sono archiviate nel sistema locale, esegui
gcloud auth list
:
gcloud auth list
L'interfaccia a riga di comando gcloud elenca gli account e mostra quale account è attivo:
Credentialed accounts: - user-1@gmail.com (active) - user-2@gmail.com
Cambiare l'account attivo
Per cambiare l'account attivo, esegui
gcloud config set
:
gcloud config set account ACCOUNT
dove [ACCOUNT]
è l'indirizzo email completo dell'account.
Puoi anche cambiare account creando una configurazione separata che specifichi l'account diverso e passando da una configurazione all'altra:
gcloud config configurations activate CONFIGURATION
Se vuoi cambiare l'account utilizzato da gcloud CLI in una
per ogni chiamata, sostituisci l'account attivo utilizzando
--account
.
Impostare la durata della sessione autorizzata
In qualità di amministratore, puoi specificare per quanto tempo diversi utenti possono accedere al riga di comando gcloud senza dover ripetere l'autenticazione. Ad esempio, puoi costringere gli utenti con privilegi elevati a ripetere l'autenticazione più spesso rispetto per gli utenti abituali.
Per ulteriori informazioni, consulta Impostare la durata della sessione per i servizi Google Cloud.
Revocare le credenziali per un account
Puoi revocare le credenziali quando vuoi non consentire l'accesso da parte del gcloud CLI da un determinato account. Non è necessario revocare per passare da un account all'altro.
Per revocare le credenziali, esegui
gcloud auth revoke
:
gcloud auth revoke ACCOUNT
Per revocare completamente l'accesso a gcloud CLI per tutte le macchine, rimuovi gcloud CLI dall'elenco di app che hanno accesso al tuo account.
Utilizzare i file delle credenziali
Trovare i file delle credenziali
Per trovare la posizione dei file delle credenziali, esegui
gcloud info
:
gcloud info
L'interfaccia a riga di comando gcloud stampa le informazioni sull'installazione. I file delle credenziali vengono archiviati nella directory di configurazione dell'utente:
User Config Directory: [/home/USERNAME/.config/gcloud]
Configurare le credenziali predefinite dell'applicazione
L'interfaccia a riga di comando gcloud fornisce il supporto per la gestione delle credenziali predefinite per le applicazioni (ADC) con il gruppo di comandi gcloud auth application-default
. Per rendere disponibili le credenziali utente per l'ADC, esegui
gcloud auth application-default login
:
gcloud auth application-default login
Queste credenziali sono non utilizzati da gcloud CLI. Per altri modi di configurare l'ADC, vedi Configura Credenziali predefinite dell'applicazione.
unset GOOGLE_APPLICATION_CREDENTIALS
gcloud config unset auth/impersonate_service_account
gcloud auth application-default login
Passaggi successivi
- Per saperne di più sull'autenticazione e su Google Cloud, consulta Panoramica dell'autenticazione.
- Per scoprire di più sulla personalizzazione di gcloud CLI, consulta Proprietà gcloud CLI.
- Per scoprire di più sulla gestione di insiemi denominati di proprietà dell'interfaccia a riga di comando gcloud, consulta Configurazioni dell'interfaccia a riga di comando gcloud.