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 workload.
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 principale dipende da quanto segue:
- Il tipo di entità
- Il tipo di policy in cui vuoi includere l'entità
Per visualizzare il formato dell'identificatore dell'entità per ogni tipo di entità in ogni tipo di policy, consulta Identificatori delle entità.
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 mandante 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 policy IAM supporta un sottoinsieme dei tipi di entità supportati da IAM. Per visualizzare i tipi di entità supportati per ogni tipo di policy, 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à quando viene 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 per il tipo di policy |
|---|---|---|---|---|
| Service account | Un account utilizzato da un workload della macchina anziché da una persona. | Unico soggetto | 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 (service agent) 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 policy supportano un insieme di agenti di servizio:
I seguenti tipi di policy 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à della forza lavoro | Un utente umano con un'identità gestita da un IdP esterno e federata utilizzando la federazione delle identità per la forza lavoro. | Unico principale | Confederato |
I seguenti tipi di criteri supportano una singola identità in un pool di identità della forza lavoro:
|
| Un insieme di entità in un pool di identità della 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à della 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. | Unico soggetto | 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 workload. | 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.
Service account
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 devono 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 policy di negazione:
principalSet://cloudresourcemanager.googleapis.com/folders/123456789012/type/ServiceAgent
Per saperne di più sui formati degli identificatori delle entità, consulta Identificatori delle entità.
Per saperne di più sui service account, consulta le pagine seguenti:
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à (IdP) 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 saperne 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
Gli esempi seguenti 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 saperne di più sui formati degli identificatori delle entità, consulta Identificatori delle entità.
Identità federate in un pool di identità del workload
Un pool Workload Identity è 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
Gli esempi seguenti mostrano come identificare i pool di identità dei workload 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 saperne 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 saperne 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