Le chiavi dell'account di servizio sono chiavi private che ti consentono di autenticarti come account di servizio. La rotazione delle chiavi è il processo di sostituzione delle chiavi esistenti con nuove chiavi e poi di invalidazione delle chiavi sostituite. Ti consigliamo di ruotare regolarmente tutte le chiavi che gestisci, incluse le chiavi dell'account di servizio.
La rotazione delle chiavi dell'account di servizio può contribuire a ridurre il rischio rappresentato dalle chiavi divulgate o rubate. Se una chiave viene divulgata, i malintenzionati potrebbero impiegare giorni o settimane per scoprirla. Se ruoti regolarmente le chiavi dell'account di servizio, è più probabile che le chiavi trapelate non siano più valide quando vengono acquisite da un malintenzionato.
Avere un processo stabilito per la rotazione delle chiavi dell'account di servizio ti aiuta anche a intervenire rapidamente se sospetti che una chiave dell'account di servizio sia stata compromessa.
La frequenza di rotazione delle chiavi
Ti consigliamo di ruotare le chiavi almeno ogni 90 giorni per ridurre il rischio causato dalla compromissione delle chiavi.
Se ritieni che una chiave dell'account di servizio sia stata compromessa, ti consigliamo di ruotarla immediatamente.
Procedura di rotazione delle chiavi
Per ruotare le chiavi dell'account di servizio:
- Identifica le chiavi dell'account di servizio che devono essere ruotate.
- Crea nuove chiavi per gli stessi account di servizio.
- Sostituisci le chiavi esistenti con le nuove in tutte le applicazioni.
- Disattiva le chiavi sostituite e monitora le applicazioni per verificare che funzionino come previsto.
- Elimina le chiavi dell'account di servizio sostituite.
Puoi completare questi passaggi utilizzando un servizio di gestione delle chiavi centralizzato o un sistema di notifiche personalizzato.
Servizio di gestione dei secret centralizzato
Molti servizi di gestione dei secret centralizzati, come HashiCorp Vault, forniscono la rotazione automatica dei secret. Puoi utilizzare questi servizi per archiviare e ruotare le chiavi dell'account di servizio.
Sconsigliamo di utilizzare Secret Manager di Google Cloud per memorizzare e ruotare le chiavi degli account di servizio. Questo perché, per accedere ai secret di Secret Manager, la tua applicazione ha bisogno di un'identità che Google Cloud possa riconoscere. Se la tua applicazione ha già un'identità che Google Cloud può riconoscere, può utilizzarla per autenticarsi su Google Cloud anziché utilizzare una chiave dell'account servizio.
Lo stesso concetto si applica ad altri servizi di gestione dei secret basati su cloud, come Azure KeyVault e AWS Secret Manager. Se un'applicazione ha già un'identità che questi provider cloud possono riconoscere, potrà utilizzarla per autenticarsi su Google Cloud anziché utilizzare una chiave dell'account servizio.
Sistema di notifiche personalizzate
Un altro approccio alla rotazione della chiave dell'account di servizio è creare un sistema che invii notifiche quando è necessario ruotare le chiavi. Ad esempio, puoi creare un sistema che invii avvisi quando rileva chiavi create più di 90 giorni fa.
Innanzitutto, devi identificare le chiavi che devono essere ruotate. Per identificare queste chiavi, ti consigliamo di utilizzare l'Cloud Asset Inventory per cercare tutte le chiavi dell'account di servizio create prima di una determinata data.
Ad esempio, il seguente comando elenca tutte le chiavi del account di servizio create prima del giorno 2023-03-10 00:00:00 UTC
nell'organizzazione con l'ID 123456789012
:
gcloud asset search-all-resources \ --scope="organizations/123456789012" \ --query="createTime < 2023-03-10" \ --asset-types="iam.googleapis.com/ServiceAccountKey" \ --order-by="createTime"
Per scoprire di più sulla ricerca delle risorse in Cloud Asset Inventory, consulta Ricerca delle risorse. Dopo aver identificato le chiavi che devono essere ruotate, puoi inviare notifiche ai team appropriati.
Quando una persona riceve una notifica per ruotare una chiave, deve procedere nel seguente modo:
- Crea una nuova chiave per lo stesso account di servizio.
- Sostituisci la chiave esistente con la nuova in tutte le applicazioni.
- Disattiva la chiave sostituita e monitora le applicazioni per verificare che funzionino come previsto.
- Dopo aver verificato che le applicazioni funzionano come previsto, elimina la chiave sostituita.
Chiavi dell'account di servizio in scadenza
Sconsigliamo di utilizzare chiavi dell'account di servizio con scadenza per rotazione della chiave. Questo accade perché le chiavi in scadenza possono causare interruzioni se non vengono ruotate correttamente. Per maggiori informazioni sui casi d'uso delle chiavi degli account di servizio con scadenza, consulta la sezione Tempi di scadenza delle chiavi gestite dall'utente.