Un criterio Identity and Access Management (IAM), che specifica i controlli dell'accesso per le risorse Google Cloud.
Un Policy è una raccolta di bindings. Un binding vincola una o più members, o entità, a un singolo role. Le entità possono essere account utente, service account, gruppi Google e domini (ad esempio G Suite). Un role è un elenco denominato di autorizzazioni; ogni role può essere un ruolo predefinito IAM o un ruolo personalizzato creato dall'utente.
Per alcuni tipi di risorse Google Cloud, un binding può anche specificare un condition, ovvero un'espressione logica che consente l'accesso a una risorsa solo se l'espressione restituisce true. Una condizione può aggiungere vincoli in base agli attributi della richiesta, della risorsa o di entrambi. Per scoprire quali risorse supportano le condizioni nelle relative policy IAM, consulta la documentazione IAM.
I valori validi sono 0, 1 e 3. Le richieste che specificano un valore non valido vengono rifiutate.
Qualsiasi operazione che influisce sulle associazioni di ruoli condizionali deve specificare la versione 3. Questo requisito si applica alle seguenti operazioni:
Recupero di un criterio che include un'associazione di ruoli condizionale
Aggiunta di un'associazione di ruolo condizionale a un criterio
Modifica di un'associazione di ruoli condizionale in una policy
Rimozione di qualsiasi associazione di ruolo, con o senza condizione, da una policy che include condizioni
Importante:se utilizzi le condizioni IAM, devi includere il campo etag ogni volta che chiami setIamPolicy. Se ometti questo campo, IAM ti consente di sovrascrivere un criterio di versione 3 con un criterio di versione 1 e tutte le condizioni del criterio di versione 3 vengono perse.
Se un criterio non include condizioni, le operazioni su questo criterio possono specificare qualsiasi versione valida o lasciare il campo non impostato.
Per scoprire quali risorse supportano le condizioni nelle relative policy IAM, consulta la documentazione IAM.
Associa un elenco di members, o entità, a un role. (Facoltativo) Può specificare un condition che determina come e quando vengono applicati i bindings. Ciascuno dei bindings deve contenere almeno un principal.
Il bindings in un Policy può fare riferimento a un massimo di 1500 entità. Di queste,un massimo di 250 possono essere gruppi Google. Ogni occorrenza di un'entità viene conteggiata ai fini di questi limiti. Ad esempio, se la concessione bindings assegna 50 ruoli diversi a user:alice@example.com e a nessun'altra entità, puoi aggiungere altre 1450 entità a bindings in Policy.
etag viene utilizzato per controllo della contemporaneità ottimistico per evitare che gli aggiornamenti simultanei di una policy si sovrascrivano a vicenda. È consigliabile che i sistemi utilizzino etag nel ciclo di lettura-modifica-scrittura per eseguire gli aggiornamenti delle norme al fine di evitare condizioni di competizione: un etag viene restituito nella risposta a getIamPolicy e i sistemi devono inserire questo etag nella richiesta a setIamPolicy per garantire che la modifica venga applicata alla stessa versione delle norme.
Importante:se utilizzi le condizioni IAM, devi includere il campo etag ogni volta che chiami setIamPolicy. Se ometti questo campo, IAM ti consente di sovrascrivere un criterio di versione 3 con un criterio di versione 1 e tutte le condizioni del criterio di versione 3 vengono perse.
ruolo assegnato all'elenco di members o entità. Ad esempio, roles/viewer, roles/editor o roles/owner.
Per una panoramica dei ruoli e delle autorizzazioni IAM, consulta la documentazione IAM. Per un elenco dei ruoli predefiniti disponibili, consulta questa pagina.
members[]
string
Specifica le entità che richiedono l'accesso a una risorsa Google Cloud. members può avere i seguenti valori:
allUsers: un identificatore speciale che rappresenta tutti gli utenti di internet, con o senza un Account Google.
allAuthenticatedUsers: un identificatore speciale che rappresenta chiunque sia autenticato con un Account Google o un account di servizio. Non include le identità provenienti da provider di identità (IdP) esterni tramite la federazione delle identità.
user:{emailid}: Un indirizzo email che rappresenta un Account Google specifico. Ad esempio, alice@example.com .
serviceAccount:{emailid}: Un indirizzo email che rappresenta un account di servizio Google. Ad esempio, my-other-app@appspot.gserviceaccount.com.
serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]: un identificatore per un service account Kubernetes. Ad esempio: my-project.svc.id.goog[my-namespace/my-kubernetes-sa].
group:{emailid}: Un indirizzo email che rappresenta un gruppo Google. Ad esempio, admins@example.com.
domain:{domain}: il dominio G Suite (principale) che rappresenta tutti gli utenti di quel dominio. Ad esempio, google.com o example.com.
principal://iam.googleapis.com/locations/global/workforcePools/{poolId}/subject/{subject_attribute_value}: Una singola identità in un pool di identità della forza lavoro.
principalSet://iam.googleapis.com/locations/global/workforcePools/{poolId}/group/{groupId}: Tutte le identità della forza lavoro in un gruppo.
principalSet://iam.googleapis.com/locations/global/workforcePools/{poolId}/attribute.{attributeName}/{attributeValue}: Tutte le identità della forza lavoro con un valore di attributo specifico.
principalSet://iam.googleapis.com/locations/global/workforcePools/{poolId}/*: Tutte le identità in un pool di identità della forza lavoro.
principal://iam.googleapis.com/projects/{projectNumber}/locations/global/workloadIdentityPools/{poolId}/subject/{subject_attribute_value}: Una singola identità in un pool di identità del workload.
principalSet://iam.googleapis.com/projects/{projectNumber}/locations/global/workloadIdentityPools/{poolId}/group/{groupId}: Un gruppo di pool di identità del workload.
principalSet://iam.googleapis.com/projects/{projectNumber}/locations/global/workloadIdentityPools/{poolId}/attribute.{attributeName}/{attributeValue}: Tutte le identità in un pool di identità del workload con un determinato attributo.
principalSet://iam.googleapis.com/projects/{projectNumber}/locations/global/workloadIdentityPools/{poolId}/*: Tutte le identità in un pool di identità del workload.
deleted:user:{emailid}?uid={uniqueid}: Un indirizzo email (più un identificatore univoco) che rappresenta un utente eliminato di recente. Ad esempio, alice@example.com?uid=123456789012345678901. Se l'utente viene recuperato, questo valore torna a user:{emailid} e l'utente recuperato mantiene il ruolo nell'associazione.
deleted:serviceAccount:{emailid}?uid={uniqueid}: Un indirizzo email (più un identificatore univoco) che rappresenta un account di servizio eliminato di recente. Ad esempio, my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901. Se il account di servizio viene ripristinato, questo valore torna a serviceAccount:{emailid} e il account di servizio ripristinato mantiene il ruolo nell'associazione.
deleted:group:{emailid}?uid={uniqueid}: un indirizzo email (più un identificatore univoco) che rappresenta un gruppo Google eliminato di recente. Ad esempio, admins@example.com?uid=123456789012345678901. Se il gruppo viene recuperato, questo valore torna a group:{emailid} e il gruppo recuperato mantiene il ruolo nell'associazione.
deleted:principal://iam.googleapis.com/locations/global/workforcePools/{poolId}/subject/{subject_attribute_value}: Identità singola eliminata in un pool di identità della forza lavoro. Ad esempio, deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value.
Se la condizione restituisce true, questo binding viene applicato alla richiesta corrente.
Se la condizione restituisce false, questo binding non si applica alla richiesta corrente. Tuttavia, un'associazione di ruoli diversa potrebbe concedere lo stesso ruolo a una o più entità in questa associazione.
Per scoprire quali risorse supportano le condizioni nelle relative policy IAM, consulta la documentazione IAM.
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Difficile da capire","hardToUnderstand","thumb-down"],["Informazioni o codice di esempio errati","incorrectInformationOrSampleCode","thumb-down"],["Mancano le informazioni o gli esempi di cui ho bisogno","missingTheInformationSamplesINeed","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2025-10-19 UTC."],[],[]]