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 vincula uno o más members o principales con un solo role. Los principales pueden ser cuentas de usuario, cuentas de servicio, Grupos de Google y dominios (como G Suite). Un role es una lista con nombre de permisos; cada role puede ser un rol predefinido de IAM o un rol personalizado creado 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.
Los valores válidos son 0, 1 y 3. Las solicitudes que especifican un valor no válido se rechazan.
Las operaciones que afecten las vinculaciones de funciones condicionales deben especificar la versión 3. Este requisito se aplica a las siguientes operaciones:
Obtener una política que incluya una vinculación de funciones condicional
Agregar una vinculación de funciones condicional a una política
Cambiar una vinculación de funciones condicional en una política
Quitar cualquier vinculación de funciones, con o sin condición, de una política que incluya condiciones
Importante: Si usas Condiciones de IAM, debes incluir el campo etag cuando llames a setIamPolicy. Si omites este campo, IAM te permite reemplazar una política de versión 3 por una de versión 1, y se pierden todas las condiciones de la política de versión 3.
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.
Asocia una lista de members o principales, con un role. De forma alternativa, puede especificar una condition que determine cómo y cuándo se aplicarán las bindings. Cada una de las bindings deben contener al menos un principal.
Las bindings de una Policy pueden hacer referencia hasta a 1,500 principales; hasta 250 de estas principales pueden ser Grupos de Google. Cada caso de una principal se tiene en cuenta para estos límites. Por ejemplo, si las bindings otorgan 50 roles diferentes a user:alice@example.com y a ninguna otra principal, puedes agregar otras 1,450 principales a las bindings en la Policy.
etag se usa para el control de simultaneidad optimista, como una forma de evitar que las actualizaciones simultáneas de una política se reemplacen entre sí. Se recomienda que los sistemas usen la etag en el ciclo de lectura, modificación y escritura para realizar actualizaciones de políticas a fin de evitar condiciones de carrera: se muestra una etag en la respuesta a getIamPolicy, y se espera que los sistemas incluyan esa ETag en la solicitud a setIamPolicy para garantizar que el cambio se aplique a la misma versión de la política.
Importante: Si usas Condiciones de IAM, debes incluir el campo etag cuando llames a setIamPolicy. Si omites este campo, IAM te permite reemplazar una política de versión 3 por una de versión 1, y se pierden todas las condiciones de la política de versión 3.
Rol que se asigna a la lista de members o principales. Por ejemplo, roles/viewer, roles/editor o roles/owner.
Para obtener una descripción general de los roles y permisos de IAM, consulta la documentación de IAM. Para obtener una lista de los roles predefinidos disponibles, consulta aquí.
members[]
string
Especifica las principales que solicitan acceso para un recurso de Google Cloud. members puede tener los siguientes valores:
allUsers: un identificador especial que representa a cualquier persona que esté en Internet; independientemente de si tienen una Cuenta de Google o no.
allAuthenticatedUsers: un identificador especial que representa a cualquier persona que esté autenticada con una Cuenta de Google o una cuenta de servicio. No incluye las identidades que provienen de proveedores de identidad externos (IdP) a través de la federación de identidades.
user:{emailid}: una dirección de correo electrónico que representa una Cuenta de Google específica. Por ejemplo, alice@example.com.
serviceAccount:{emailid}: una dirección de correo electrónico que representa una cuenta de servicio de Google. Por ejemplo, my-other-app@appspot.gserviceaccount.com.
serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]: un identificador para una cuenta de servicio de Kubernetes. Por ejemplo, my-project.svc.id.goog[my-namespace/my-kubernetes-sa].
group:{emailid}: una dirección de correo electrónico que representa a un grupo de Google. Por ejemplo, admins@example.com.
domain:{domain}: el dominio de G Suite (principal) que representa a todos los usuarios de ese dominio. Por ejemplo, google.com o example.com.
principal://iam.googleapis.com/locations/global/workforcePools/{poolId}/subject/{subject_attribute_value}: identidad única en un grupo de identidad de personal.
principalSet://iam.googleapis.com/locations/global/workforcePools/{poolId}/group/{groupId}: todas las identidades del personal de un grupo.
principalSet://iam.googleapis.com/locations/global/workforcePools/{poolId}/attribute.{attributeName}/{attributeValue}: todas las identidades del personal con un valor de atributo específico.
principalSet://iam.googleapis.com/locations/global/workforcePools/{poolId}/*: todas las identidades en un grupo de identidad de personal.
principal://iam.googleapis.com/projects/{projectNumber}/locations/global/workloadIdentityPools/{poolId}/subject/{subject_attribute_value}: identidad única en un grupo de identidades para cargas de trabajo.
principalSet://iam.googleapis.com/projects/{projectNumber}/locations/global/workloadIdentityPools/{poolId}/group/{groupId}: un grupo de grupos de identidades para cargas de trabajo.
principalSet://iam.googleapis.com/projects/{projectNumber}/locations/global/workloadIdentityPools/{poolId}/attribute.{attributeName}/{attributeValue}: todas las identidades de un grupo de identidades para cargas de trabajo con un atributo determinado.
principalSet://iam.googleapis.com/projects/{projectNumber}/locations/global/workloadIdentityPools/{poolId}/*: todas las identidades en un grupo de identidades para cargas de trabajo.
deleted:user:{emailid}?uid={uniqueid}: una dirección de correo electrónico (más el identificador único) que representa a un usuario que se borró en los últimos días. Por ejemplo, alice@example.com?uid=123456789012345678901. Si el usuario se recupera, este valor se revierte a user:{emailid}, y el usuario recuperado conserva la función en la vinculación.
deleted:serviceAccount:{emailid}?uid={uniqueid}: Una dirección de correo electrónico (más el identificador único) que representa a una cuenta de servicio que se borró en los últimos días. Por ejemplo, my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901. Si la cuenta se recupera, este valor se revierte a serviceAccount:{emailid}, y la cuenta recuperada conserva el rol en la vinculación.
deleted:group:{emailid}?uid={uniqueid}: Una dirección de correo electrónico (más el identificador único) que representa a un grupo de Google que se borró en los últimos días. Por ejemplo, admins@example.com?uid=123456789012345678901. Si el grupo se recupera, este valor se revierte a group:{emailid}, y el grupo recuperado conserva el rol en la vinculación.
deleted:principal://iam.googleapis.com/locations/global/workforcePools/{poolId}/subject/{subject_attribute_value}: identidad única borrada en un grupo de identidad de personal. Por ejemplo, deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value.
Si la condición se evalúa como true, esta vinculación se aplica a la solicitud actual.
Si la condición se evalúa como false, esta vinculación no se aplica a la solicitud actual. Sin embargo, una vinculación de roles diferente puede otorgar el mismo rol a uno o más de los principales de esta vinculación.
Para saber qué recursos admiten condiciones en sus políticas de IAM, consulta la documentación de IAM.
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Información o código de muestra incorrectos","incorrectInformationOrSampleCode","thumb-down"],["Faltan la información o los ejemplos que necesito","missingTheInformationSamplesINeed","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2025-10-19 (UTC)"],[],[]]