Cloud IAM (Identity and Access Management) di Google Cloud permette di definire "chi (who) può fare cosa (what) su quale risorsa (which resource)". Sebbene il concetto sia simile a quello di AWS IAM, l'implementazione di Google si basa su una gerarchia di risorse più strutturata.
I Protagonisti di IAM
- Principal (Chi): L'"attore" che richiede l'accesso. Può essere un Google Account (un utente finale), un Service Account (un'identità per un'applicazione o una VM), un Google Group, o un intero dominio Google Workspace.
- Role (Cosa): Un ruolo è una collezione di permessi. Un permesso definisce un'azione specifica su una risorsa (es. `compute.instances.start`). Non si assegnano mai permessi singoli, ma sempre ruoli.
- Resource (Quale): La risorsa cloud a cui si applica la policy (un progetto, un'istanza VM, un bucket di Cloud Storage).
La policy IAM è il legame che unisce uno o più "principal" a un "ruolo" su una specifica "risorsa".
La Gerarchia delle Risorse
Una caratteristica chiave di GCP è la sua gerarchia: Organization > Folders > Projects > Resources. Le policy IAM sono ereditate dall'alto verso il basso. Se concedi a un utente il ruolo di "Viewer" a livello di cartella, quell'utente potrà vedere tutte le risorse in tutti i progetti all'interno di quella cartella.
Tipi di Ruoli
- Ruoli Base (Basic Roles): I ruoli storici: Owner (pieno controllo), Editor (può modificare tutto), Viewer (può vedere tutto). Sono molto ampi e andrebbero usati con cautela, preferendo i ruoli predefiniti.
- Ruoli Predefiniti (Predefined Roles): Offrono un controllo molto più granulare. Google fornisce centinaia di ruoli predefiniti per ogni servizio (es. `roles/compute.instanceAdmin` per gestire le VM, `roles/storage.objectAdmin` per gestire gli oggetti in un bucket). È la best practice usare questi ruoli.
- Ruoli Personalizzati (Custom Roles): Se nessuno dei ruoli predefiniti soddisfa le tue esigenze, puoi creare un ruolo personalizzato combinando i permessi specifici di cui hai bisogno, seguendo il principio del privilegio minimo.
Hai bisogno di una soluzione su misura?
Dalla Web App al gestionale custom, trasformiamo le tue idee in software performante. Contattaci per una consulenza gratuita.
Richiedi una consulenza