Es una política de administración de identidades y accesos (IAM) que especifica los controles de acceso de los recursos de Google Cloud.
Una Policy
es una colección de bindings
. Una binding
une uno o más members
o principales con un solo role
. Las principales pueden ser cuentas de usuario, cuentas de servicio, grupos de Google y dominios (como G Suite). Una role
es una lista con nombre de permisos; una role
puede ser una función predefinida de IAM o una función personalizada creada por el usuario.
Para algunos tipos de recursos de Google Cloud, una binding
también puede especificar una condition
, que es una expresión lógica que permite el acceso a un recurso solo si la expresión se evalúa como true
. Una condición puede agregar restricciones en función de los atributos de la solicitud, el recurso o ambos. Para saber qué recursos admiten condiciones en sus políticas de IAM, consulta la documentación de IAM.
Ejemplo de JSON:
{
"bindings": [
{
"role": "roles/resourcemanager.organizationAdmin",
"members": [
"user:mike@example.com",
"group:admins@example.com",
"domain:google.com",
"serviceAccount:my-project-id@appspot.gserviceaccount.com"
]
},
{
"role": "roles/resourcemanager.organizationViewer",
"members": [
"user:eve@example.com"
],
"condition": {
"title": "expirable access",
"description": "Does not grant access after Sep 2020",
"expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')",
}
}
],
"etag": "BwWWja0YfJA=",
"version": 3
}
Ejemplo de YAML:
bindings:
- members:
- user:mike@example.com
- group:admins@example.com
- domain:google.com
- serviceAccount:my-project-id@appspot.gserviceaccount.com
role: roles/resourcemanager.organizationAdmin
- members:
- user:eve@example.com
role: roles/resourcemanager.organizationViewer
condition:
title: expirable access
description: Does not grant access after Sep 2020
expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
etag: BwWWja0YfJA=
version: 3
Para obtener una descripción de IAM y sus características, consulta la documentación de IAM.
Representación JSON |
---|
{ "version": integer, "bindings": [ { object ( |
Campos | |
---|---|
version |
Especifica el formato de la política. Los valores válidos son Las operaciones que afecten las vinculaciones de funciones condicionales deben especificar la versión
Importante: Si usas Condiciones de IAM, debes incluir el campo Si una política no incluye condiciones, las operaciones de esa política pueden especificar cualquier versión válida o dejar el campo sin configurar. Para saber qué recursos admiten condiciones en sus políticas de IAM, consulta la documentación de IAM. |
bindings[] |
Asocia una lista de Las |
auditConfigs[] |
Especifica la configuración del registro de auditoría en la nube para esta política. |
etag |
Importante: Si usas Condiciones de IAM, debes incluir el campo String codificada en base64. |