In Identity and Access Management (IAM), controlli l'accesso per le entità. Un principal rappresenta una o più identità autenticate in Cloud de Confiance.
Utilizzare i principal nei criteri
Per utilizzare i principal nelle policy:
Configura le identità che Cloud de Confiance può riconoscere. La configurazione delle identità è il processo di creazione di identità che Cloud de Confiance possono riconoscere. Puoi configurare le identità per gli utenti e per i carichi di lavoro.
Per scoprire come configurare le identità, consulta quanto segue:
- Per scoprire come configurare le identità per gli utenti, consulta Identità per gli utenti.
- Per scoprire come configurare le identità per i workload, consulta Identità per i workload.
Determina l'identificatore principale che utilizzerai. L'identificatore dell'entità è il modo in cui fai riferimento a un'entità nei tuoi criteri. Questo identificatore può fare riferimento a una singola identità o a un gruppo di identità.
Il formato che utilizzi per l'identificatore dell'entità dipende da quanto segue:
- Il tipo di entità
- Il tipo di policy in cui vuoi includere l'entità
Per visualizzare il formato dell'identificatore principale per ogni tipo di principal in ogni tipo di norma, consulta Identificatori principal.
Una volta noto il formato dell'identificatore, puoi determinare l'identificatore univoco dell'entità in base agli attributi dell'entità, ad esempio l'indirizzo email.
Includi l'identificatore dell'entità nella norma. Aggiungi il tuo principale alle tue norme, seguendo il formato delle norme.
Per scoprire di più sui diversi tipi di criteri in IAM, consulta Tipi di criteri.
Supporto per i tipi di entità
Ogni tipo di criterio IAM supporta un sottoinsieme dei tipi di entità supportati da IAM. Per visualizzare i tipi di entità supportati per ogni tipo di criterio, consulta Identificatori delle entità.
Tipi di entità
La tabella seguente descrive brevemente i diversi tipi di principal supportati da IAM. Per una descrizione dettagliata ed esempi di come potrebbe apparire un tipo di entità se utilizzato in una policy, fai clic sul nome del tipo di entità nella tabella.
| Tipo di entità | Descrizione | Singola entità o set di entità | Gestito da Google o federato | Supporto del tipo di norma |
|---|---|---|---|---|
| Service account | Un account utilizzato da un workload della macchina anziché da una persona. | Entità singola | Gestita da Google |
I seguenti tipi di policy supportano i service account:
|
| Un insieme di service account | Tutti gli account di servizio in un progetto, una cartella o un'organizzazione. | Set di entità che contiene service account. | Gestita da Google |
I seguenti tipi di criteri supportano un insieme di service account:
|
| Un insieme di agenti di servizio | Tutti i service account (agenti di servizio) gestiti da Google associati a un progetto, una cartella o un'organizzazione. | Set di entità che contiene i service agent. | Gestita da Google |
I seguenti tipi di norme supportano un insieme di agenti di servizio:
I seguenti tipi di norme non supportano un insieme di service agent:
|
allAuthenticatedUsers |
Un identificatore speciale che rappresenta tutti gli account di servizio e gli utenti di internet che hanno eseguito l'autenticazione con un Account Google. |
Set di entità che può contenere i seguenti tipi di entità:
|
Gestita da Google |
I seguenti tipi di policy supportano
I seguenti tipi di norme non supportano
|
allUsers |
Un identificatore speciale che rappresenta chiunque navighi su internet, autenticato e non autenticato. |
Set di entità che può contenere i seguenti tipi di entità:
|
Entrambi |
I seguenti tipi di norme supportano
|
| Una singola identità in un pool di identità per la forza lavoro | Un utente umano con un'identità gestita da un IdP esterno e federata utilizzando la federazione delle identità per la forza lavoro. | Entità singola | Confederato |
I seguenti tipi di criteri supportano una singola identità in un pool di identità per la forza lavoro:
|
| Un insieme di entità in un pool di identità per la forza lavoro | Un insieme di utenti umani con identità gestite da un IdP esterno e federate utilizzando la federazione delle identità per la forza lavoro. | Set di entità che contiene identità della forza lavoro. | Confederato |
I seguenti tipi di policy supportano un insieme di entità in un pool di identità per la forza lavoro:
|
| Una singola entità in un pool di identità del workload | Un workload (o utente macchina) con un'identità gestita da un IdP esterno e federata utilizzando la federazione delle identità per i workload. | Entità singola | Confederato |
I seguenti tipi di policy supportano una singola entità in un pool di identità del workload:
|
| Un insieme di entità in un pool di identità del workload | Un insieme di workload (o utenti macchina) con identità gestite da un IdP esterno e federate utilizzando la federazione delle identità per i carichi di lavoro. | Set di entità che contiene le identità dei carichi di lavoro | Confederato |
I seguenti tipi di policy supportano un insieme di entità in un pool di identità del workload:
|
| Un insieme di pod Google Kubernetes Engine | Un carico di lavoro (o utente macchina) in esecuzione e federato tramite GKE. | Set di entità che può contenere una o più identità federate del carico di lavoro | Confederato |
I seguenti tipi di norme supportano i pod GKE:
I seguenti tipi di norme non supportano i pod GKE:
|
Le sezioni seguenti descrivono in modo più dettagliato questi tipi principali.
Account di servizio
Un account di servizio è un account per un'applicazione o un workload di computing anziché per un singolo utente finale. I service account possono essere suddivisi in service account gestiti dall'utente e service account gestiti da Google, chiamati agenti di servizio:
Quando esegui un codice ospitato su Cloud de Confiance, specifichi un service account da utilizzare come identità per la tua applicazione. Puoi creare tutti gli account di servizio gestiti dall'utente necessari per rappresentare i diversi componenti logici della tua applicazione.
Alcuni servizi Cloud de Confiance hanno bisogno di accedere alle tue risorse per poter agire per tuo conto. Google crea e gestisce i service agent per soddisfare questa esigenza.
Puoi fare riferimento agli account di servizio e agli agenti di servizio nei seguenti modi:
- Un singolo account di servizio
- Tutti i service account in un progetto
- Tutti gli agenti di servizio associati a un progetto.
- Tutti gli account di servizio in tutti i progetti di una cartella
- Tutti gli agenti di servizio associati a una cartella e ai relativi elementi secondari
- Tutti gli account di servizio in tutti i progetti di un'organizzazione
- Tutti gli agenti di servizio associati a un'organizzazione e ai relativi discendenti
I seguenti esempi mostrano come identificare un singolo account di servizio in diversi tipi di policy:
- Un account di servizio nelle norme di autorizzazione:
serviceAccount:my-service-account@my-project.s3ns.iam.gserviceaccount.com - Un account di servizio nelle norme di negazione:
principal://iam.googleapis.com/projects/-/serviceAccounts/my-service-account@my-project.s3ns.iam.gserviceaccount.com
I seguenti esempi mostrano come identificare tutti i service account per un progetto, una cartella o un'organizzazione in diversi tipi di policy:
- Tutti i service account per un progetto nelle policy di autorizzazione:
principalSet://cloudresourcemanager.googleapis.com/projects/123456789012/type/ServiceAccount - Tutti gli agenti di servizio associati a una cartella nelle norme di negazione:
principalSet://cloudresourcemanager.googleapis.com/folders/123456789012/type/ServiceAgent
Per scoprire di più sui formati degli identificatori delle entità, consulta Identificatori delle entità.
Per saperne di più sui service account, consulta le seguenti pagine:
allAuthenticatedUsers
Il valore allAuthenticatedUsers è un identificatore speciale che rappresenta tutti
gli account di servizio.
Questo tipo di entità non include le identità federate, che sono gestite da provider di identità esterni. Per includere le identità federate, utilizza una delle seguenti opzioni:
- Per includere gli utenti di tutti gli IdP, utilizza
allUsers. - Per includere utenti di IdP esterni specifici, utilizza l'identificatore per tutte le identità in un pool di identità della forza lavoro o tutte le identità in un pool di identità del workload.
Alcuni tipi di risorse non supportano questo tipo di entità.
allUsers
Il valore allUsers è un identificatore speciale che rappresenta chiunque si trovi su internet, inclusi gli utenti autenticati e non autenticati.
Alcuni tipi di risorse non supportano questo tipo di entità.
I seguenti esempi mostrano l'aspetto dell'identificatore allUsers in
diversi tipi di policy:
- Policy di autorizzazione sui tipi di risorse supportati:
allUsers - Criteri di negazione:
principalSet://goog/public:all
Per scoprire di più sui formati degli identificatori delle entità, consulta Identificatori delle entità.
Identità federate in un pool di identità della forza lavoro
Un pool di identità della forza lavoro è un insieme di identità utente gestite da un IdP esterno e federate utilizzando la federazione delle identità per la forza lavoro. Puoi fare riferimento ai principal in questi pool nei seguenti modi:
- Una singola identità in un pool di identità della forza lavoro
- Tutte le identità della forza lavoro in un gruppo specificato
- Tutte le identità della forza lavoro con un valore di attributo specifico
- Tutte le identità in un pool di identità della forza lavoro
I seguenti esempi mostrano come identificare i pool di identità della forza lavoro federata in diversi tipi di policy:
- Una singola identità nelle norme di autorizzazione:
principal://iam.googleapis.com/locations/global/workforcePools/altostrat-contractors/subject/raha@altostrat.com - Un gruppo di identità nei criteri di negazione:
principalSet://iam.googleapis.com/locations/global/workforcePools/altostrat-contractors/group/administrators-group@altostrat.com
Per scoprire di più sui formati degli identificatori delle entità, consulta Identificatori delle entità.
Identità federate in un pool di identità del workload
Un pool di identità del workload è un insieme di identità del workload gestite da un IdP esterno e federate utilizzando la federazione delle identità per i carichi di lavoro. Puoi fare riferimento ai principal in questi pool nei seguenti modi:
- Una singola identità in un pool di identità del workload
- Tutte le identità del workload in un gruppo specificato
- Tutte le identità del workload con un valore di attributo specifico
- Tutte le identità in un pool di identità del workload
I seguenti esempi mostrano come identificare i pool di identità dei carichi di lavoro federati in diversi tipi di policy:
- Una singola identità nelle norme di autorizzazione:
principal://iam.googleapis.com/projects/123456789012/locations/global/workloadIdentityPools/altostrat-contractors/subject/raha@altostrat.com - Un gruppo di identità nei criteri di negazione:
principalSet://iam.googleapis.com/projects/123456789012/locations/global/workloadIdentityPools/altostrat-contractors/group/administrators-group@altostrat.com
Per scoprire di più sui formati degli identificatori delle entità, consulta Identificatori delle entità.
Pod GKE
I workload in esecuzione su GKE utilizzano Workload Identity Federation for GKE per accedere Cloud de Confiance ai servizi. Per ulteriori informazioni sugli identificatori principali per i pod GKE, consulta Fare riferimento alle risorse Kubernetes nelle policy IAM.
Il seguente esempio mostra come identificare tutti i pod GKE in un cluster specifico in una policy di autorizzazione:
principalSet://iam.googleapis.com/projects/123456789012/locations/global/workloadIdentityPools/123456789012.s3ns.svc.id.goog/kubernetes.cluster/https://container.googleapis.com/v1/projects/123456789012/locations/global/clusters/example-gke-cluster
Per scoprire di più sui formati degli identificatori delle entità, consulta Identificatori delle entità.
Passaggi successivi
- Scopri di più sui tipi di policy supportati da IAM
- Concedi a un'entità un ruolo in un progetto, una cartella o un'organizzazione Resource Manager