En Identity and Access Management (IAM), controlas el acceso para las entidades principales. Un principal representa una o más identidades que se autenticaron en Google Cloud.
Usa principales en tus políticas
Para usar principales en tus políticas, haz lo siguiente:
Configura las identidades que Google Cloud puede reconocer. La configuración de identidades es el proceso de crear identidades que Google Cloud puede reconocer. Puedes configurar identidades para los usuarios y las cargas de trabajo.
Para obtener información sobre cómo configurar identidades, consulta lo siguiente:
- Para obtener más información sobre cómo configurar identidades para los usuarios, consulta Identidades para los usuarios.
- Para obtener más información sobre cómo configurar identidades para cargas de trabajo, consulta Identidades para cargas de trabajo.
Determina el identificador principal que usarás. El identificador de principal es la forma en que te refieres a una principal en tus políticas. Este identificador puede hacer referencia a una sola identidad o a un grupo de identidades.
El formato que usas para el identificador principal depende de lo siguiente:
- Tipo de principal
- Es el tipo de política en la que deseas incluir el principal.
Para ver el formato del identificador de principal para cada tipo de principal en cada tipo de política, consulta Identificadores de principal.
Después de conocer el formato del identificador, puedes determinar el identificador único de la principal según sus atributos, como su dirección de correo electrónico.
Incluye el identificador de la principal en tu política. Agrega tu principal a la política siguiendo el formato de esta.
Para obtener información sobre los diferentes tipos de políticas en IAM, consulta Tipos de políticas.
Compatibilidad con tipos de principales
Cada tipo de política de IAM admite un subconjunto de los tipos de principales que admite IAM. Para ver los tipos de principal compatibles con cada tipo de política, consulta Identificadores de principal.
Tipos principales
En la siguiente tabla, se describen brevemente los diferentes tipos de principales que admite IAM. Para obtener una descripción detallada y ejemplos de cómo se puede ver un tipo de principal cuando se usa en una política, haz clic en el nombre del tipo de principal en la tabla.
Tipo de principal | Descripción | Un principal único o un conjunto de principales | Administrada por Google o federada | Compatibilidad con el tipo de política |
---|---|---|---|---|
Cuentas de Google | Cuentas de usuario que representan a una persona que interactúa con las APIs y los servicios de Google. | Principal única | Administrada por Google |
Los siguientes tipos de políticas admiten Cuentas de Google:
Los siguientes tipos de políticas no admiten Cuentas de Google:
|
Cuentas de servicio | Es una cuenta que usa una carga de trabajo de máquina en lugar de una persona. | Principal única | Administrada por Google |
Los siguientes tipos de políticas admiten cuentas de servicio:
Los siguientes tipos de políticas no admiten cuentas de servicio:
|
Grupos de Google | Es una colección con nombre de usuarios humanos o de máquinas con Cuentas de Google. |
Es el conjunto de principales que puede contener lo siguiente:
|
Administrada por Google |
Los siguientes tipos de políticas admiten grupos de Google:
Los siguientes tipos de políticas no admiten los Grupos de Google:
|
Dominios | Una cuenta de Google Workspace o un dominio de Cloud Identity que representa un grupo virtual. El grupo puede contener tanto usuarios humanos como cuentas de servicio. |
Es un conjunto de principales que puede contener los siguientes tipos de principales:
|
Administrada por Google |
Los siguientes tipos de políticas admiten dominios:
|
allAuthenticatedUsers |
Es un identificador especial que representa a todas las cuentas de servicio y a todos los usuarios humanos de Internet que se autenticaron con una Cuenta de Google. |
Es un conjunto de principales que puede contener los siguientes tipos de principales:
|
Administrada por Google |
Los siguientes tipos de políticas admiten
Los siguientes tipos de políticas no admiten
|
allUsers |
Es un identificador especial que representa a cualquier persona que esté en Internet, ya sea autenticada o no. |
Es un conjunto de principales que puede contener los siguientes tipos de principales:
|
Ambos |
Los siguientes tipos de políticas admiten
Los siguientes tipos de políticas no admiten
|
Una sola identidad en un grupo de identidades del personal | Un usuario humano con una identidad que administra un IdP externo y se federa con la federación de identidades de personal. | Principal única | Federado |
Los siguientes tipos de políticas admiten una sola identidad en un grupo de identidad de personal:
|
Un conjunto de principales en un grupo de identidad de personal | Es un conjunto de usuarios humanos con identidades que administra un IdP externo y se federan con la federación de identidades de personal. | Es el conjunto de principales que contiene identidades de personal. | Federado |
Los siguientes tipos de políticas admiten un conjunto de principales en un grupo de identidades de personal:
|
Un principal único en un grupo de identidades para cargas de trabajo | Una carga de trabajo (o usuario de máquina) con una identidad que administra un IdP externo y se federa con la federación de identidades para cargas de trabajo. | Principal única | Federado |
Los siguientes tipos de políticas admiten un solo principal en un grupo de identidades para cargas de trabajo:
|
Un conjunto de principales en un grupo de identidades para cargas de trabajo | Es un conjunto de cargas de trabajo (o usuarios de máquinas) con identidades que administra un IdP externo y se federan con la federación de identidades para cargas de trabajo. | Es el conjunto de principales que contiene identidades para cargas de trabajo. | Federado |
Los siguientes tipos de políticas admiten un conjunto de principales en un grupo de identidades para cargas de trabajo:
|
Un conjunto de Pods de Google Kubernetes Engine | Una carga de trabajo (o usuario de máquina) que se ejecuta en GKE y se federa a través de él. | Es un conjunto de principales que puede contener una o más identidades federadas para cargas de trabajo. | Federado |
Los siguientes tipos de políticas admiten Pods de GKE:
Los siguientes tipos de políticas no admiten pods de GKE:
|
Conjuntos principales de Resource Manager | Es un conjunto de usuarios humanos o de máquinas asociados con recursos de Google Cloud , como proyectos, carpetas y organizaciones. |
Es un conjunto de principales que puede contener los siguientes tipos de principales:
|
Ambos |
Los siguientes tipos de políticas admiten conjuntos de principales de Resource Manager:
Los siguientes tipos de políticas no admiten conjuntos de principales de Resource Manager:
|
En las siguientes secciones, se describen estos tipos principales con más detalle.
Cuentas de Google
Una Cuenta de Google representa a un desarrollador, un administrador o cualquier otra persona que interactúe con Google Cloud a través de una cuenta que haya creado con Google. Cualquier dirección de correo electrónico asociada a una Cuenta de Google, también llamada cuenta de usuario administrada, se puede usar como principal. Esto incluye las direcciones de correo electrónico de gmail.com
y las direcciones de correo electrónico con otros dominios.
En los siguientes ejemplos, se muestra cómo puedes identificar una Cuenta de Google en diferentes tipos de políticas:
- Políticas de permiso:
user:alex@example.com
- Políticas de denegación:
principal://goog/subject/alex@example.com
Para obtener más información sobre los formatos de identificadores de principal, consulta Identificadores de principal.
En tus políticas de permiso y denegación, los alias de correo electrónico asociados a una Cuenta de Google o a una cuenta de usuario administrada se reemplazan automáticamente por la dirección de correo electrónico principal. Esto significa que la política muestra la dirección de correo electrónico principal del usuario cuando le otorgas acceso a un alias de correo electrónico.
Para obtener más información sobre cómo configurar Cuentas de Google, consulta Cuentas de Cloud Identity o Google Workspace.
Cuentas de servicio
Una cuenta de servicio es una cuenta para una aplicación o una carga de trabajo de procesamiento en lugar de un usuario final individual. Cuando ejecutas código alojado enGoogle Cloud, especificas una cuenta de servicio para usar como identidad de tu aplicación. Puedes crear tantas cuentas de servicio como sea necesario para representar los diferentes componentes lógicos de tu aplicación.
En los siguientes ejemplos, se muestra cómo identificar una cuenta de servicio en diferentes tipos de políticas:
- Políticas de permiso:
serviceAccount:my-service-account@my-project.iam.gserviceaccount.com
- Políticas de denegación:
principal://iam.googleapis.com/projects/-/serviceAccounts/my-service-account@my-project.iam.gserviceaccount.com
Para obtener más información sobre los formatos de identificadores de principal, consulta Identificadores de principal.
Para obtener más información sobre las cuentas de servicio, consulta Descripción general de las cuentas de servicio.
Grupos de Google
Un Grupo de Google es una colección de Cuentas de Google que posee un nombre. Cada Grupo de Google tiene una dirección de correo electrónico única asociada al grupo. Para encontrar la dirección de correo electrónico asociada con un Grupo de Google, haz clic en Acerca de en la página principal de cualquier Grupo de Google. Para obtener más información sobre los Grupos de Google, consulta la página principal de Grupos de Google.
Los Grupos de Google son una forma conveniente de aplicar controles de acceso a un grupo de principales. Puedes otorgar y cambiar los controles de acceso para un grupo completo de una sola vez, en lugar de hacerlo para usuarios individuales o principales uno por uno. También puedes agregar o quitar principales de un Grupo de Google en lugar de actualizar una política de permisos para agregar o quitar principales.
Los Grupos de Google no tienen credenciales de acceso y no puedes usarlos para establecer la identidad a fin de solicitar acceso a un recurso.
En los siguientes ejemplos, se muestra cómo puedes identificar un grupo de Google en diferentes tipos de políticas:
- Políticas de permiso:
group:my-group@example.com
- Políticas de denegación:
principalSet://goog/group/my-group@example.com
Para obtener más información sobre los formatos de identificadores de principal, consulta Identificadores de principal.
Para obtener más información sobre el uso de grupos para el control de acceso, consulta las prácticas recomendadas para usar Grupos de Google.
Dominios
Los dominios pueden existir como cuentas de Google Workspace o dominios de Cloud Identity. Son fundamentalmente iguales porque ambos representan un grupo virtual de todas las Cuentas de Google que contienen. La única diferencia es que los usuarios del dominio de Cloud Identity no tienen acceso a las aplicaciones y funciones de Google Workspace.
Las cuentas de Google Workspace y los dominios de Cloud Identity se asocian al nombre de dominio de Internet de tu organización, como example.com
.
Cuando creas una Cuenta de Google para un usuario nuevo, como username@example.com
, esa Cuenta de Google se agrega al grupo virtual de tu cuenta de Google Workspace o dominio de Cloud Identity.
Al igual que los Grupos de Google, no se pueden usar los dominios para establecer la identidad, pero permiten la administración conveniente de permisos.
En los siguientes ejemplos, se muestra cómo puedes identificar un dominio en diferentes tipos de políticas:
- Políticas de permiso:
domain:example.com
- Políticas de denegación:
principalSet://goog/cloudIdentityCustomerId/C01Abc35
- Políticas de límite de acceso de las principales:
//iam.googleapis.com/locations/global/workspace/C01Abc35
Para obtener más información sobre los formatos de identificadores de principal, consulta Identificadores de principal.
Para obtener más información sobre Cloud Identity, consulta Acerca de Cloud Identity.
En tus políticas de permiso y denegación, los dominios secundarios se reemplazan automáticamente por el dominio principal. Esto significa que la política muestra el dominio principal cuando otorgas acceso a un dominio secundario.
allAuthenticatedUsers
El valor allAuthenticatedUsers
es un identificador especial que representa a todas las cuentas de servicio y a todos los usuarios de Internet que se autenticaron con una Cuenta de Google. Este identificador incluye cuentas que no están conectadas a una cuenta de Google Workspace o a un dominio de Cloud Identity, como Cuentas de Gmail personales. Los usuarios que no están autenticados, como los visitantes anónimos, no están incluidos.
Este tipo de principal no incluye las identidades federadas, que son administradas por proveedores de identidad externos (IdP). Si usas la federación de identidades de personal o la federación de identidades para cargas de trabajo, no uses allAuthenticatedUsers
. En su lugar, usa una de las siguientes opciones:
- Para incluir usuarios de todos los IdP, usa
allUsers
. - Para incluir usuarios de IdP externos específicos, usa el identificador de todas las identidades de un grupo de identidades del personal o todas las identidades de un grupo de identidades para cargas de trabajo.
Algunos tipos de recursos no admiten este tipo de principal.
allUsers
El valor allUsers
es un identificador especial que representa a cualquier persona que esté en Internet, incluidos los usuarios autenticados y no autenticados.
Algunos tipos de recursos no admiten este tipo de principal.
En los siguientes ejemplos, se muestra cómo podría verse el identificador allUsers
en diferentes tipos de políticas:
- Políticas de permisos en tipos de recursos admitidos:
allUsers
- Políticas de denegación:
principalSet://goog/public:all
Para obtener más información sobre los formatos de identificadores de principal, consulta Identificadores de principal.
Identidades federadas en un grupo de identidad de personal.
Un grupo de identidades de personal es un conjunto de identidades de usuario que administra un IdP externo y se federa con la federación de identidades de personal. Puedes hacer referencia a los principales en estos grupos de las siguientes maneras:
- Una identidad única en un grupo de identidades de personal
- Todas las identidades del personal de un grupo especificado
- Todas las identidades del personal con un valor de atributo específico
- Todas las identidades en un grupo de identidad de personal
En los siguientes ejemplos, se muestra cómo puedes identificar grupos de identidades para cargas de trabajo federadas en diferentes tipos de políticas:
- Un solo principal en las políticas de permisos:
principal://iam.googleapis.com/locations/global/workforcePools/altostrat-contractors/subject/raha@altostrat.com
- Un conjunto de principales en políticas de denegación:
principalSet://iam.googleapis.com/locations/global/workforcePools/altostrat-contractors/group/administrators-group@altostrat.com
- Políticas de límite de acceso de las principales:
//iam.googleapis.com/locations/global/workforcePools/example-workforce-pool
Para obtener más información sobre los formatos de identificadores de principal, consulta Identificadores de principal.
Identidades federadas en un grupo de identidades para cargas de trabajo
Un grupo de identidades para cargas de trabajo es un conjunto de identidades para cargas de trabajo que administra un IdP externo y se federa con la federación de identidades para cargas de trabajo. Puedes hacer referencia a los principales en estos grupos de las siguientes maneras:
- Una identidad única en un grupo de identidades para cargas de trabajo
- Todas las identidades para cargas de trabajo en un grupo especificado
- Todas las identidades para cargas de trabajo con un valor de atributo específico
- Todas las identidades en un grupo de Workload Identity:
En los siguientes ejemplos, se muestra cómo puedes identificar grupos de identidades para cargas de trabajo federadas en diferentes tipos de políticas:
- Un solo principal en las políticas de permisos:
principal://iam.googleapis.com/projects/123456789012/locations/global/workloadIdentityPools/altostrat-contractors/subject/raha@altostrat.com
- Un grupo de principales en políticas de denegación:
principalSet://iam.googleapis.com/projects/123456789012/locations/global/workloadIdentityPools/altostrat-contractors/group/administrators-group@altostrat.com
- Políticas de límite de acceso de las principales:
//iam.googleapis.com/projects/123456789012/locations/global/workloadIdentityPools/example-workload-pool
Para obtener más información sobre los formatos de identificadores de principal, consulta Identificadores de principal.
Pods de GKE
Las cargas de trabajo que se ejecutan en GKE usan la federación de identidades para cargas de trabajo para GKE para acceder a los servicios de Google Cloud . Para obtener más información sobre los identificadores principales de los Pods de GKE, consulta Cómo hacer referencia a recursos de Kubernetes en políticas de IAM.
En el siguiente ejemplo, se muestra cómo identificar todos los Pods de GKE en un clúster específico en una política de permisos:
principalSet://iam.googleapis.com/projects/123456789012/locations/global/workloadIdentityPools/123456789012.svc.id.goog/kubernetes.cluster/https://container.googleapis.com/v1/projects/123456789012/locations/global/clusters/example-gke-cluster
Para obtener más información sobre los formatos de identificadores de principal, consulta Identificadores de principal.
Conjuntos principales de Resource Manager
Cada recurso de Resource Manager (proyectos, carpetas y organizaciones) está asociado a un conjunto de principales. Cuando creas vinculaciones de políticas de límite de acceso de las principales, puedes usar el conjunto de principales para un recurso de Resource Manager para hacer referencia a todas las principales asociadas con ese recurso.
Los conjuntos de principales para los recursos de Resource Manager contienen los siguientes principales:
- Conjunto de principales del proyecto: Todas las cuentas de servicio y los grupos de identidades para cargas de trabajo en el proyecto especificado.
- Conjunto de principales de la carpeta: Todas las cuentas de servicio y todos los grupos de identidades para cargas de trabajo en cualquier proyecto de la carpeta especificada.
Conjunto principal de tipo organización: Contiene las siguientes identidades:
- Todas las identidades en todos los dominios asociados con tu ID de cliente de Google Workspace
- Todos los grupos de identidades del personal de tu organización
- Todas las cuentas de servicio y los grupos de identidades para cargas de trabajo en cualquier proyecto de la organización
En el siguiente ejemplo, se muestra cómo puedes identificar el conjunto principal de un proyecto en una política de límite de acceso de principales para el conjunto principal de un proyecto:
//cloudresourcemanager.googleapis.com/projects/example-project
Para obtener más información sobre los formatos de identificadores de principal, consulta Identificadores de principal.
¿Qué sigue?
- Obtén información sobre los tipos de políticas que admite IAM
- Otorga un rol a una principal en un proyecto, una carpeta o una organización de Resource Manager