En este documento y en el documento Tipos de tokens, se explican los distintos tokens que usa Cloud de Confiance by S3NS para la autenticación y la autorización. Están diseñadas para personas que desean aprender cómo funciona la autenticación basada en tokens o que desean implementar la autenticación sin usar las bibliotecas cliente de Cloud.
No es necesario que conozcas esta información cuando interactúas con las APIs de Cloud de Confiance by S3NSa través de las bibliotecas cliente de Cloud, la consola de Cloud de Confiance o Google Cloud CLI, ya que el proceso de selección del tipo de token adecuado, y la obtención y actualización de esos tokens se manejan automáticamente por ti.
Autenticación de usuarios
Cuando los usuarios humanos interactúan con Cloud de Confiance by S3NS, no lo hacen directamente con las APIs deCloud de Confiance by S3NS . En su lugar, usan un cliente para actuar en su nombre.
El cliente que usan puede ser una aplicación web, una aplicación de escritorio o una utilidad como Google Cloud CLI o curl.
Dado que el cliente realiza solicitudes y no el usuario, Cloud de Confiance by S3NS no puede solicitar información de identidad del usuario directamente para verificar si tiene permiso para usar una API. En cambio, esta identidad se pasa a la API a través del cliente en forma de token, que se incluye en cada solicitud a la API.
Un token de autenticación del usuario codifica la siguiente información:
Es la identidad del usuario.
Es la identidad del cliente.
Garantía de que el cliente puede actuar en nombre del usuario.
La autenticación del usuario y la autorización del cliente involucran a las siguientes partes:
Con un usuario
Es un cliente que actúa en nombre del usuario.
Un servidor de autorización, en el que se basan las APIs de Google para autenticar al cliente
Es una API de Cloud de Confiance by S3NS con la que interactúa el cliente.
Los clientes no pueden emitir tokens por sí mismos. En cambio, deben trabajar con un servidor de autorización para hacer lo siguiente:
Autentica al usuario.
Autentica al cliente.
Autoriza al cliente a actuar en nombre del usuario.
Emite un token para el cliente.
Un usuario que se autentica con la federación de identidades de personal y un proveedor de identidad externo es un principal del grupo de identidades de personal. La principal tiene un identificador similar al siguiente:
principal://iam.googleapis.com/locations/global/workforcePools/POOL_ID/subject/raha@altostrat.com
Autenticación de cargas de trabajo
Algunos clientes necesitan interactuar con las APIs de Google en su propio nombre. Por ejemplo, es posible que un trabajo programado necesite leer datos de BigQuery o Cloud Storage sin que participe ningún usuario humano.
Los clientes que actúan sin supervisión y por su cuenta se denominan cargas de trabajo. A diferencia de la autenticación de usuarios, la autenticación de cargas de trabajo combina la autenticación del usuario y la autorización del cliente en un solo paso. Por este motivo, un token de autenticación de carga de trabajo codifica la identidad solo del cliente.
La autenticación y autorización de cargas de trabajo involucran a las siguientes partes:
Es una carga de trabajo que actúa como cliente y usuario, y en su propio nombre.
Un servidor de autorización, en el que se basan las APIs de Google para autenticar al cliente
Es una API de Cloud de Confiance by S3NS con la que interactúa el cliente.
Para acceder a las APIs de Cloud de Confiance by S3NS , los clientes deben trabajar con un servidor de autorización para hacer lo siguiente:
Autentica al cliente.
Autoriza al cliente.
Emite un token para el cliente.
Una carga de trabajo autenticada también se conoce como principal, pero las cargas de trabajo usan identificadores principales diferentes a los de los usuarios.
Una carga de trabajo que se autentica con una cuenta de servicio es una principal de cuenta de servicio. El principal tiene un identificador similar al siguiente:
serviceAccount:my-service-account@my-project.s3ns.iam.gserviceaccount.com
Una carga de trabajo que se autentica con la federación de identidades para cargas de trabajo es una principal del grupo de identidades para cargas de trabajo. La principal tiene un identificador similar al siguiente:
principal://iam.googleapis.com/projects/PROJECT_NAME/locations/global/workloadIdentityPools/POOL_ID/subject/SUBJECT_ATTRIBUTE_VALUE
¿Qué sigue?
Obtén más información sobre los tipos de tokens.