Questa pagina spiega come disabilitare e abilitare le chiavi del account di servizio utilizzando la consoleGoogle Cloud , Google Cloud CLI , l'API Identity and Access Management o una delle librerie client di Google Cloud .
Prima di iniziare
Abilita l'API IAM.
Ruoli richiesti per abilitare le API
Per abilitare le API, devi disporre del ruolo IAM Amministratore utilizzo dei servizi (
roles/serviceusage.serviceUsageAdmin), che include l'autorizzazioneserviceusage.services.enable. Scopri come concedere i ruoli.Configurare l'autenticazione.
Seleziona la scheda relativa a come intendi utilizzare i campioni in questa pagina:
gcloud
Nella console Google Cloud , attiva Cloud Shell.
Nella parte inferiore della console Google Cloud viene avviata una sessione di Cloud Shell e viene visualizzato un prompt della riga di comando. Cloud Shell è un ambiente shell con Google Cloud CLI già installata e con valori già impostati per il progetto corrente. L'inizializzazione della sessione può richiedere alcuni secondi.
Java
Per utilizzare gli esempi Java in questa pagina in un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura Credenziali predefinite dell'applicazione con le tue credenziali utente.
-
Installa Google Cloud CLI.
-
Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.
-
Se utilizzi una shell locale, crea credenziali di autenticazione locali per il tuo account utente:
gcloud auth application-default login
Non è necessario eseguire questa operazione se utilizzi Cloud Shell.
Se viene restituito un errore di autenticazione e utilizzi un provider di identità (IdP) esterno, verifica di aver acceduto a gcloud CLI con la tua identità federata.
Per saperne di più, consulta Configura ADC per un ambiente di sviluppo locale nella documentazione sull'autenticazione di Google Cloud .
REST
Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, utilizzi le credenziali che fornisci a gcloud CLI.
Installa Google Cloud CLI.
Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.
Per saperne di più, consulta Autenticati per usare REST nella documentazione sull'autenticazione di Google Cloud .
-
Comprendi le credenziali del service account.
Ruoli obbligatori
Per ottenere le autorizzazioni
necessarie per disattivare e attivare le chiavi del account di servizio,
chiedi all'amministratore di concederti il ruolo IAM
Amministratore chiavi service account (roles/iam.serviceAccountKeyAdmin)
sul progetto o sul account di servizio di cui vuoi gestire le chiavi.
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
I ruoli di base IAM contengono anche le autorizzazioni per gestire le chiavi dei service account. Non devi concedere ruoli di base in un ambiente di produzione, ma puoi concederli in un ambiente di sviluppo o di test.
Disabilitare una chiave account di servizio
La disattivazione di una chiave del account di servizio impedisce l'utilizzo della chiave per l'autenticazione con le API di Google. Puoi attivare una chiave disattivata in qualsiasi momento.
Prima di eliminare una account di servizio account, ti consigliamo di disattivarla e poi di attendere finché non avrai la certezza che non sia più necessaria. A questo punto puoi eliminare la chiave.
Puoi visualizzare le chiavi disattivate nella console Google Cloud , ma non puoi utilizzare la consoleGoogle Cloud per disattivare una chiave. Utilizza invece gcloud CLI o l'API REST.
gcloud
Esegui il comando gcloud iam service-accounts keys disable
per disattivare una chiave del account di servizio.
Sostituisci i seguenti valori:
KEY_ID: l'ID della chiave da disattivare. Per trovare l'ID della chiave, elenca tutte le chiavi del service account, identifica la chiave che vuoi disattivare e poi copia il relativo ID.SA_NAME: il nome del account di servizio a cui appartiene la chiave.PROJECT_ID: l'ID progetto Google Cloud .
gcloud iam service-accounts keys disable KEY_ID \ --iam-account=SA_NAME@PROJECT_ID.iam.gserviceaccount.com \ --project=PROJECT_ID
Output:
Disabled key [KEY_ID] for service account [SA_NAME@PROJECT_ID.iam.gserviceaccount.com]
Java
Per scoprire come installare e utilizzare la libreria client per IAM, consulta Librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM Java.
Per eseguire l'autenticazione in IAM, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Prima di iniziare.
REST
Il metodo
projects.serviceAccounts.keys.disable
disattiva una chiave del account di servizio.
Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:
PROJECT_ID: il tuo ID progetto Google Cloud . Gli ID progetto sono stringhe alfanumeriche, comemy-project.SA_NAME: il nome del account di servizio di cui vuoi disattivare la chiave.KEY_ID: l'ID della chiave che vuoi disattivare. Per trovare l'ID della chiave, elenca tutte le chiavi del service account, identifica la chiave che vuoi disattivare e poi copia il relativo ID dalla fine del camponame. L'ID della chiave è tutto ciò che seguekeys/.
Metodo HTTP e URL:
POST https://iam.googleapis.com/v1/projects/PROJECT_ID/serviceAccounts/SA_NAME@PROJECT_ID.iam.gserviceaccount.com/keys/KEY_ID:disable
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{
}
Abilitare una chiave del account di servizio
Dopo aver disattivato una chiave del account di servizio, puoi riattivarla in qualsiasi momento e utilizzarla per l'autenticazione con le API di Google.
Non puoi utilizzare la console Google Cloud per abilitare le chiavi del account di servizio. Utilizza l'interfaccia a riga di comando gcloud o l'API REST.
gcloud
Esegui il comando gcloud iam service-accounts keys enable
per abilitare una chiave dell'account di servizio.
Sostituisci i seguenti valori:
KEY_ID: l'ID della chiave da attivare. Per trovare l'ID della chiave, elenca tutte le chiavi del service account, identifica la chiave che vuoi attivare e poi copia il relativo ID.SA_NAME: il nome del account di servizio a cui appartiene la chiave.PROJECT_ID: il tuo ID progetto Google Cloud .
gcloud iam service-accounts keys enable KEY_ID \ --iam-account=SA_NAME@PROJECT_ID.iam.gserviceaccount.com\ --project=PROJECT_ID
Output:
Enabled key [KEY_ID] for service account [SA_NAME@PROJECT_ID.iam.gserviceaccount.com]
Java
Per scoprire come installare e utilizzare la libreria client per IAM, consulta Librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM Java.
Per eseguire l'autenticazione in IAM, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Prima di iniziare.
REST
Il metodo
projects.serviceAccounts.keys.enable
consente una chiave del account di servizio.
Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:
PROJECT_ID: il tuo ID progetto Google Cloud . Gli ID progetto sono stringhe alfanumeriche, comemy-project.SA_NAME: Il nome del account di servizio di cui vuoi attivare la chiave.-
KEY_ID: l'ID della chiave che vuoi attivare. Per trovare l'ID della chiave, elenca tutte le chiavi del service account, identifica la chiave che vuoi attivare e poi copia il relativo ID dalla fine del camponame. L'ID della chiave è tutto ciò che seguekeys/.
Metodo HTTP e URL:
POST https://iam.googleapis.com/v1/projects/PROJECT_ID/serviceAccounts/SA_NAME@PROJECT_ID.iam.gserviceaccount.com/keys/KEY_ID:enable
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{
}
Passaggi successivi
- Scopri come eliminare le account di servizio account.
- Scopri come elencare e ottenere le account di servizio account.
- Scopri come utilizzare le chiavi del account di servizio per autenticarti come service account.
- Scopri le alternative alle chiavi delaccount di serviziot per l'autenticazione.
- Comprendere le best practice per la gestione delle chiavi degli account di servizio.
Provalo
Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti senza costi per l'esecuzione, il test e il deployment dei carichi di lavoro.
Inizia senza costi