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 Cloud de Confiance.
Usa principales en tus políticas
Para usar principales en tus políticas, haz lo siguiente:
Configura las identidades que Cloud de Confiance puede reconocer. La configuración de identidades es el proceso de crear identidades que Cloud de Confiance 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 podría verse 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 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:
|
| Un conjunto de cuentas de servicio | Todas las cuentas de servicio en un proyecto, una carpeta o una organización. | Es el conjunto de principales que contiene cuentas de servicio. | Administrada por Google |
Los siguientes tipos de políticas admiten un conjunto de cuentas de servicio:
|
| Un conjunto de agentes de servicio | Son todas las cuentas de servicio administradas por Google (agentes de servicio) asociadas a un proyecto, una carpeta o una organización. | Es el conjunto de principales que contiene agentes de servicio. | Administrada por Google |
Los siguientes tipos de políticas admiten un conjunto de agentes de servicio:
Los siguientes tipos de políticas no admiten un conjunto de agentes de servicio:
|
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
|
| 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:
|
En las siguientes secciones, se describen estos tipos principales con más detalle.
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. Las cuentas de servicio se pueden dividir en cuentas de servicio administradas por el usuario y cuentas de servicio administradas por Google, que se denominan agentes de servicio:
Cuando ejecutas código alojado en Cloud de Confiance, especificas una cuenta de servicio para usarla como identidad de tu aplicación. Puedes crear tantas cuentas de servicio administradas por el usuario como sea necesario para representar los diferentes componentes lógicos de tu aplicación.
Algunos Cloud de Confiance servicios necesitan acceder a tus recursos para actuar en tu nombre. Google crea y administra agentes de servicio para satisfacer esta necesidad.
Puedes hacer referencia a las cuentas de servicio y a los agentes de servicio de las siguientes maneras:
- Una sola cuenta de servicio
- Todas las cuentas de servicio de un proyecto
- Son todos los agentes de servicio asociados a un proyecto.
- Todas las cuentas de servicio de todos los proyectos de una carpeta
- Todos los agentes de servicio asociados a una carpeta y sus elementos secundarios
- Todas las cuentas de servicio de todos los proyectos de una organización
- Todos los agentes de servicio asociados con una organización y sus elementos secundarios
En los siguientes ejemplos, se muestra cómo puedes identificar una cuenta de servicio individual en diferentes tipos de políticas:
- Una cuenta de servicio en las políticas de permisos:
serviceAccount:my-service-account@my-project.s3ns.iam.gserviceaccount.com - Una cuenta de servicio en políticas de denegación:
principal://iam.googleapis.com/projects/-/serviceAccounts/my-service-account@my-project.s3ns.iam.gserviceaccount.com
En los siguientes ejemplos, se muestra cómo puedes identificar todas las cuentas de servicio de un proyecto, una carpeta o una organización en diferentes tipos de políticas:
- Todas las cuentas de servicio de un proyecto en las políticas de permisos:
principalSet://cloudresourcemanager.googleapis.com/projects/123456789012/type/ServiceAccount - Todos los agentes de servicio asociados a una carpeta en las políticas de denegación:
principalSet://cloudresourcemanager.googleapis.com/folders/123456789012/type/ServiceAgent
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 las siguientes páginas:
allAuthenticatedUsers
El valor allAuthenticatedUsers es un identificador especial que representa a todas las cuentas de servicio.
Este tipo de principal no incluye las identidades federadas, que son administradas por proveedores de identidad externos (IdP). Para incluir identidades federadas, 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:
- Una sola identidad en las políticas de permisos:
principal://iam.googleapis.com/locations/global/workforcePools/altostrat-contractors/subject/raha@altostrat.com - Un grupo de identidades en políticas de denegación:
principalSet://iam.googleapis.com/locations/global/workforcePools/altostrat-contractors/group/administrators-group@altostrat.com
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:
- Una sola identidad en las políticas de permisos:
principal://iam.googleapis.com/projects/123456789012/locations/global/workloadIdentityPools/altostrat-contractors/subject/raha@altostrat.com - Un grupo de identidades en políticas de denegación:
principalSet://iam.googleapis.com/projects/123456789012/locations/global/workloadIdentityPools/altostrat-contractors/group/administrators-group@altostrat.com
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 Cloud de Confiance . 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 puedes 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.s3ns.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.
¿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