Indice
IAMPolicy
(interfaccia)AuditConfig
(messaggio)AuditLogConfig
(messaggio)AuditLogConfig.LogType
(enumerazione)Binding
(messaggio)GetIamPolicyRequest
(messaggio)GetPolicyOptions
(messaggio)Policy
(messaggio)SetIamPolicyRequest
(messaggio)TestIamPermissionsRequest
(messaggio)TestIamPermissionsResponse
(messaggio)
IAMPolicy
Panoramica dell'API
Gestisce i criteri IAM (Gestione di identità e accessi).
L'implementazione di un'API che offre funzionalità di controllo dell'accesso implementa l'interfaccia google.iam.v1.IAMPolicy.
Modello dati
Il controllo dell'accesso viene applicato quando un'entità (account utente o di servizio) esegue una determinata azione su una risorsa esposta da un servizio. Le risorse, identificate da nomi simili a URI, sono le unità di specifica del controllo dell'accesso. Le implementazioni dei servizi possono scegliere la granularità del controllo dell'accesso e le autorizzazioni supportate per le proprie risorse. Ad esempio, un servizio di database potrebbe consentire di specificare il controllo dell'accesso solo a livello di tabella, mentre un altro potrebbe consentire di specificare il controllo dell'accesso anche a livello di colonna.
Struttura dei criteri
Vedi google.iam.v1.Policy
Non si tratta intenzionalmente di un'API CRUD style, perché i criteri di controllo dell'accesso vengono creati ed eliminati implicitamente con le risorse a cui sono collegati.
AuditConfig
Specifica la configurazione di controllo per un servizio. La configurazione determina quali tipi di autorizzazione vengono registrati e quali eventuali identità sono esenti dalla registrazione. Un AuditConfig deve avere uno o più AuditLogConfig.
Se sono presenti AuditConfig sia per allServices
sia per un servizio specifico, viene utilizzata l'unione dei due AuditConfig per quel servizio: sono esenti i log_type specificati in ogni AuditConfig e sono esenti i membri esenti in ogni AuditLogConfig.
Esempio di criterio con più oggetti AuditConfig:
{
"audit_configs": [
{
"service": "allServices"
"audit_log_configs": [
{
"log_type": "DATA_READ",
"exempted_members": [
"user:jose@example.com"
]
},
{
"log_type": "DATA_WRITE",
},
{
"log_type": "ADMIN_READ",
}
]
},
{
"service": "sampleservice.googleapis.com"
"audit_log_configs": [
{
"log_type": "DATA_READ",
},
{
"log_type": "DATA_WRITE",
"exempted_members": [
"user:aliya@example.com"
]
}
]
}
]
}
Per sampleservice, questo criterio abilita il logging di DATA_READ, DATA_WRITE e ADMIN_READ. Inoltre, questa azione esclude jose@example.com dal logging di DATA_READ e aliya@example.com dal logging di DATA_WRITE.
Campi | |
---|---|
service |
Specifica un servizio che verrà abilitato per l'audit logging. Ad esempio, |
audit_log_configs[] |
La configurazione per il logging di ogni tipo di autorizzazione. |
AuditLogConfig
Fornisce la configurazione per la registrazione di un tipo di autorizzazioni. Esempio:
{
"audit_log_configs": [
{
"log_type": "DATA_READ",
"exempted_members": [
"user:jose@example.com"
]
},
{
"log_type": "DATA_WRITE",
}
]
}
Questa operazione attiva il logging 'DATA_READ' e 'DATA_WRITE' mentre è esclusa l'accesso a jose@example.com dal logging di DATA_READ.
Campi | |
---|---|
log_type |
Il tipo di log abilitato da questa configurazione. |
exempted_members[] |
Specifica le identità che non causano il logging per questo tipo di autorizzazione. Segue lo stesso formato di |
ignore_child_exemptions |
Specifica se le entità possono essere esenti per lo stesso LogType nei criteri delle risorse di livello inferiore. Se il valore è true, le eventuali esenzioni di livello inferiore vengono ignorate. |
LogType
Elenco di tipi di autorizzazioni validi per i quali è possibile configurare il logging. Le scritture dell'amministratore sono sempre registrate e non sono configurabili.
Enum | |
---|---|
LOG_TYPE_UNSPECIFIED |
Richiesta predefinita. Non dovrebbe mai essere così. |
ADMIN_READ |
L'amministratore legge. Esempio: getIamPolicy di CloudIAM |
DATA_WRITE |
Scritture dati. Esempio: utenti di Cloud SQL creati |
DATA_READ |
Lettura dati. Esempio: elenco di utenti Cloud SQL |
Associazione
Associa members
a un role
.
Campi | |
---|---|
role |
Ruolo assegnato a |
members[] |
Specifica le identità che richiedono l'accesso per una risorsa Cloud Platform.
|
condition |
La condizione associata a questa associazione. NOTA: una condizione non soddisfatta non consentirà l'accesso dell'utente tramite l'associazione corrente. Le associazioni diverse, comprese le condizioni, vengono esaminate in modo indipendente. |
GetIamPolicyRequest
Messaggio di richiesta per il metodo GetIamPolicy
.
Campi | |
---|---|
resource |
OBBLIGATORIO: la risorsa per cui viene richiesto il criterio. Consulta la documentazione relativa all'operazione per conoscere il valore appropriato per questo campo. |
options |
OPTIONAL: un oggetto |
GetPolicyOptions
Incapsula le impostazioni fornite a GetIamPolicy.
Campi | |
---|---|
requested_policy_version |
(Facoltativo) La versione del formato del criterio da restituire. I valori accettabili sono 0 e 1. Se il valore è 0 o il campo viene omesso, verrà restituita la versione 1 del criterio. |
Criterio
Definisce un criterio per la gestione di identità e accessi (IAM). Si utilizza per specificare i criteri di controllo dell'accesso per le risorse Cloud Platform.
Policy
è un elenco composto da bindings
. Un binding
associa un elenco di members
a un role
, in cui i membri possono essere account utente, gruppi Google, domini Google e account di servizio. role
è un elenco denominato di autorizzazioni definite da IAM.
Esempio JSON
{
"bindings": [
{
"role": "roles/owner",
"members": [
"user:mike@example.com",
"group:admins@example.com",
"domain:google.com",
"serviceAccount:my-other-app@appspot.gserviceaccount.com"
]
},
{
"role": "roles/viewer",
"members": ["user:sean@example.com"]
}
]
}
Esempio di VPAID
bindings:
- members:
- user:mike@example.com
- group:admins@example.com
- domain:google.com
- serviceAccount:my-other-app@appspot.gserviceaccount.com
role: roles/owner
- members:
- user:sean@example.com
role: roles/viewer
Per una descrizione di IAM e delle sue funzionalità, consulta la guida per gli sviluppatori IAM.
Campi | |
---|---|
version |
Deprecato. |
bindings[] |
Associa un elenco di |
audit_configs[] |
Specifica la configurazione dell'audit logging di Cloud per questo criterio. |
etag |
Se nella chiamata a |
SetIamPolicyRequest
Messaggio di richiesta per il metodo SetIamPolicy
.
Campi | |
---|---|
resource |
OBBLIGATORIO: la risorsa per la quale viene specificato il criterio. Consulta la documentazione relativa all'operazione per conoscere il valore appropriato per questo campo. |
policy |
OBBLIGATORIO: il criterio completo da applicare al |
update_mask |
OPTIONAL: una FieldMask che specifica quali campi del criterio modificare. Verranno modificati solo i campi nella maschera. Se non viene fornita alcuna maschera, viene utilizzata la seguente maschera predefinita: path: "bindings, etag" Questo campo viene utilizzato solo da Cloud IAM. |
TestIamPermissionsRequest
Messaggio di richiesta per il metodo TestIamPermissions
.
Campi | |
---|---|
resource |
OBBLIGATORIO: la risorsa per cui viene richiesto il dettaglio del criterio. Consulta la documentazione relativa all'operazione per conoscere il valore appropriato per questo campo. |
permissions[] |
L'insieme delle autorizzazioni per verificare |
TestIamPermissionsResponse
Messaggio di risposta per il metodo TestIamPermissions
.
Campi | |
---|---|
permissions[] |
Un sottoinsieme di |