Identity and Access Management (IAM) fornisce più ruoli predefiniti per la maggior parte dei Google Cloud servizi. Ogni ruolo predefinito contiene le autorizzazioni necessarie per eseguire un'attività o un gruppo di attività correlate. Questo documento ti aiuta a scegliere i ruoli predefiniti giusti per una determinata attività.
Per alcune attività, trovare un ruolo predefinito appropriato è spesso semplice. Ad esempio, se un'entità deve visualizzare gli oggetti in un bucket Cloud Storage, il ruolo Visualizzatore oggetti Storage (roles/storage.objectViewer) è probabilmente una buona scelta.
Tuttavia, esistono centinaia di ruoli predefiniti, il che può rendere difficile identificare i ruoli più appropriati da concedere alle entità. Può anche essere difficile trovare ruoli che seguano il principio del privilegio minimo, secondo cui le entità non devono avere più autorizzazioni di quelle di cui hanno effettivamente bisogno.
Questa pagina illustra la procedura per scegliere manualmente i ruoli predefiniti più appropriati:
- Identifica le autorizzazioni necessarie.
- Trova i ruoli che contengono le autorizzazioni.
- Scegli i ruoli più appropriati.
- Decidi dove concedere i ruoli.
- Concedi i ruoli a un'entità.
In alternativa, puoi chiedere a Gemini di suggerire i ruoli predefiniti di cui un'entità ha bisogno per eseguire una determinata attività. Per saperne di più su questa funzionalità, consulta Ricevere suggerimenti sui ruoli predefiniti con l'assistenza di Gemini.
Identificare le autorizzazioni necessarie
Per identificare le autorizzazioni di cui un'entità ha bisogno, inizia elencando le attività che deve svolgere e i Google Cloud servizi che utilizzerà per queste attività. Ad esempio, un'entità potrebbe dover utilizzare Compute Engine per creare istanze di macchine virtuali.
Dopo aver identificato le attività e i servizi, puoi utilizzare alcune strategie per identificare le autorizzazioni necessarie per ogni attività:
Consulta la documentazione dei Google Cloud servizi.
Per alcuni servizi, le guide pratiche orientate alle attività elencano i ruoli o le autorizzazioni di cui hai bisogno per ogni attività, in una sezione "Prima di iniziare" o nelle istruzioni per ogni attività. Ad esempio, consulta i prerequisiti di Compute Engine per l'importazione e l'esportazione di immagini VM.
Altri servizi identificano i ruoli e le autorizzazioni richiesti in una pagina sul controllo dell'accesso. Ad esempio, consulta le autorizzazioni richieste di Pub/Sub per chiamare i metodi Pub/Sub.
Identifica i metodi API REST o RPC che utilizzeresti per completare le attività e consulta la documentazione di riferimento dell'API per le autorizzazioni IAM richieste.
Per alcuni servizi, la documentazione dell'API REST e RPC elenca le autorizzazioni richieste da ogni metodo. Ad esempio, consulta la documentazione di Compute Engine per il metodo
instances.get.Esamina l'elenco delle autorizzazioni per ogni servizio e usa il tuo giudizio per trovare le autorizzazioni pertinenti.
Nella maggior parte dei casi, il nome di ogni autorizzazione descrive anche cosa ti consente di fare con essa. Ad esempio, l'autorizzazione per la creazione di un'istanza VM di Compute Engine si chiama
compute.instances.create.Per aiutarti a comprendere il nome di ogni autorizzazione, ricorda che i nomi delle autorizzazioni utilizzano il formato
SERVICE.RESOURCE_TYPE.ACTION.
In generale, non è necessario identificare ogni autorizzazione richiesta per ogni attività. Concentrati invece sull'identificazione dell'autorizzazione più pertinente per ogni attività. Se un ruolo predefinito contiene questa autorizzazione, è probabile che contenga anche autorizzazioni correlate.
Nell'ambito di questa procedura, dovresti anche provare a identificare quali delle autorizzazioni richieste sono le più potenti. In generale, le autorizzazioni più potenti sono incluse in un numero inferiore di ruoli predefiniti. Di conseguenza, se ti concentri su queste autorizzazioni, avrai un elenco più breve di potenziali ruoli tra cui scegliere.
Ad esempio, i seguenti tipi di autorizzazioni sono particolarmente potenti:
- Autorizzazioni per creare ed eliminare risorse
- Autorizzazioni per accedere a dati sensibili, come chiavi di crittografia o informazioni di identificazione personale (PII)
- Autorizzazioni per impostare la policy di autorizzazione o la policy di negazione per una risorsa
- Autorizzazioni per aggiornare organizzazioni, cartelle e progetti, che possono causare l'ereditarietà degli aggiornamenti da parte di altre risorse
Al contrario, i seguenti tipi di autorizzazioni sono meno potenti:
- Autorizzazioni per elencare le risorse
- Autorizzazioni per accedere a dati non sensibili
- Autorizzazioni per aggiornare le impostazioni con rischi limitati, ad esempio la piattaforma CPU minima per le istanze di macchine virtuali di Compute Engine
Trovare i ruoli che contengono le autorizzazioni
Dopo aver identificato le autorizzazioni richieste, puoi cercare i ruoli predefiniti che le contengono e creare un elenco di ruoli che potrebbero essere adatti. Il modo più semplice per trovare questi ruoli è cercare un'autorizzazione nell'indice dei ruoli e delle autorizzazioni IAM e fare clic sul nome dell'autorizzazione. Il riferimento per ogni autorizzazione indica i ruoli che la contengono.
Per seguire il principio del privilegio minimo, potresti dover identificare più di un ruolo predefinito da concedere, soprattutto se le autorizzazioni richieste appartengono a più Google Cloud servizi. Ad esempio, se un'entità deve visualizzare gli oggetti Cloud Storage e amministrare i database Cloud SQL, è improbabile che un singolo ruolo predefinito contenga le autorizzazioni appropriate per entrambi i servizi. Se esiste un ruolo di questo tipo, potrebbe includere anche un numero elevato di autorizzazioni non correlate di cui l'entità non ha bisogno. Per ridurre i rischi, cerca un ruolo che contenga le autorizzazioni richieste per Cloud Storage e un altro ruolo che contenga le autorizzazioni richieste per Cloud SQL.
Scegliere i ruoli più appropriati
Ora che hai un elenco di ruoli predefiniti che potrebbero essere adatti, puoi scegliere i ruoli più appropriati dall'elenco.
Inizia eliminando i seguenti tipi di ruoli:
Per gli ambienti di produzione: ruoli di base, inclusi Proprietario (
roles/owner), Editor (roles/editor) e Visualizzatore (roles/viewer).I ruoli di base includono migliaia di autorizzazioni per tutti i Google Cloud servizi. In ambienti di produzione, non concedere ruoli di base a meno che non ci siano alternative. Concedi invece i ruoli predefiniti o personalizzati più limitati secondo le tue esigenze.
Ruoli di service agent, che in genere hanno titoli che terminano con "Service Agent" e nomi che terminano con
serviceAgent.Questi ruoli sono destinati ai service agent, un tipo speciale di account di servizio utilizzato da un Google Cloud servizio per accedere alle tue risorse. I ruoli di service agent tendono a contenere autorizzazioni per più servizi, che potrebbero includere servizi a cui l'entità non deve accedere.
Poi, utilizza il riferimento ai ruoli predefiniti o la pagina Ruoli nella Google Cloud console per elencare le autorizzazioni contenute in ogni ruolo. Ti consigliamo di scegliere i ruoli predefiniti che contengono tutte le autorizzazioni di cui un utente potrebbe aver bisogno per un determinato caso d'uso. Ogni servizio fornisce ruoli di amministratore, editor e visualizzatore generali che soddisfano questo scopo. Ad esempio, il ruolo Amministratore Bigtable fornisce le autorizzazioni amministrative per creare nuove istanze e l'accesso a tutti i dati delle tabelle in un progetto, mentre il ruolo Visualizzatore Bigtable fornisce l'accesso di sola visualizzazione a Bigtable nella console. Google Cloud
(Facoltativo) Controlla ogni ruolo per verificare la presenza di autorizzazioni che non vuoi che l'entità abbia ed elimina tutti i ruoli che contengono autorizzazioni indesiderate. Se questa procedura elimina tutti i ruoli predefiniti, valuta la possibilità di creare un ruolo personalizzato adatto al tuo caso d'uso.
La scelta dei ruoli in base alle autorizzazioni di cui un utente potrebbe aver bisogno bilancia il principio del privilegio minimo con la necessità di anticipare i futuri requisiti di accesso degli utenti. Tuttavia, se vuoi rispettare rigorosamente il privilegio minimo, seleziona il ruolo o i ruoli che contengono il minor numero di autorizzazioni.
Decidere dove concedere i ruoli
Quando concedi un ruolo, lo concedi sempre a una Google Cloud risorsa specifica, che appartiene a una gerarchia di risorse. Le risorse di livello inferiore, come le istanze VM di Compute Engine, ereditano i ruoli concessi alle risorse di livello superiore, come progetti, cartelle e organizzazioni.
Scegli dove concedere i ruoli predefiniti che hai identificato:
- Se l'entità deve accedere a risorse specifiche di livello inferiore, concedi i ruoli a queste risorse.
Se l'entità deve accedere a molte risorse all'interno di un progetto, una cartella o un'organizzazione, concedi i ruoli al progetto, alla cartella o all'organizzazione. Scegli la risorsa di livello più basso che soddisfi le esigenze dell'entità.
Inoltre, valuta la possibilità di utilizzare le condizioni IAM per concedere i ruoli solo a risorse specifiche all'interno del progetto, della cartella o dell'organizzazione.
Se hai identificato più ruoli predefiniti, valuta se concederli a livelli diversi della gerarchia delle risorse. Ad esempio, se un'entità deve accedere a un singolo database Cloud SQL, ma a molte istanze VM di Compute Engine diverse, potresti voler concedere il ruolo per Cloud SQL sul database e il ruolo per Compute Engine sul progetto.
Concedere i ruoli a un'entità
Ora è tutto pronto per concedere i ruoli all'entità. Per scoprire come concedere i ruoli, consulta:
- Gestire l'accesso a progetti, cartelle e organizzazioni
- Gestire l'accesso agli account di servizio
- Gestire l'accesso ad altre risorse
Se l'entità dispone delle autorizzazioni previste per le risorse corrette, ma non è in grado di completare le attività, è possibile che tu abbia trascurato un'autorizzazione di cui l'entità ha bisogno. Ripeti il tentativo precedente aggiungendo le autorizzazioni richieste all'elenco, trovando i ruoli che contengono queste autorizzazioni e scegliendo i ruoli più appropriati.
Se concedi accidentalmente un ruolo con troppe autorizzazioni, un suggerimento di ruolo potrebbe suggerire un ruolo meno permissivo che soddisfi le esigenze dell'entità. Alcune associazioni di ruoli non ricevono suggerimenti di ruoli.Passaggi successivi
- Scopri come Policy Simulator può aiutarti a testare le modifiche ai ruoli di un'entità.
- Scopri come Policy Analyzer può indicarti l'accesso di un' entità a una risorsa.
- Scopri i dettagli sulla risoluzione dei problemi di accesso.