Este documento e o documento Tipos de tokens abordam os vários tokens usados pelo Cloud de Confiance by S3NS para autenticação e autorização. Destinam-se a pessoas que querem saber como funciona a autenticação baseada em tokens ou que querem implementar a autenticação sem usar as bibliotecas de cliente da nuvem.
Não precisa de saber estas informações quando interage com as Cloud de Confiance by S3NS APIs através das bibliotecas de cliente da nuvem, da Cloud de Confiance consola ou da CLI Google Cloud. O processo de seleção do tipo de token correto, bem como a obtenção e a atualização desses tokens, é processado automaticamente por si.
Autenticação do utilizador
Quando os utilizadores humanos interagem com o Cloud de Confiance by S3NS, não interagem diretamente com as APIsCloud de Confiance by S3NS . Em alternativa, usam um cliente para agir em seu nome.
O cliente que usam pode ser uma app Web, uma app para computador ou um utilitário como a CLI Google Cloud ou o curl.
Uma vez que é o cliente que faz os pedidos e não o utilizador, Cloud de Confiance by S3NS não é possível pedir informações de identidade ao utilizador diretamente para verificar se tem autorização para usar uma API. Em alternativa, esta identidade é transmitida à API através do cliente sob a forma de um token, que é incluído em cada pedido da API.
Um token de autenticação do utilizador codifica as seguintes informações:
A identidade do utilizador.
A identidade do cliente.
Garantia de que o cliente tem autorização para agir em nome do utilizador.
A autenticação do utilizador e a autorização do cliente envolvem as seguintes partes:
Um utilizador.
Um cliente que atua em nome do utilizador.
Um servidor de autorizações, no qual as APIs Google confiam para autenticar o cliente.
Uma Cloud de Confiance by S3NS API com a qual o cliente interage.
Os clientes não podem emitir tokens. Em alternativa, têm de trabalhar com um servidor de autorização para fazer o seguinte:
Autentique o utilizador.
Autentique o cliente.
Autorizar o cliente a agir em nome do utilizador.
Emitir um token para o cliente.
Um utilizador que se autentica através da federação de identidade da força de trabalho e de um fornecedor de identidade externo é um principal do Workforce Identity Pool. O principal tem um identificador principal semelhante ao seguinte:
principal://iam.googleapis.com/locations/global/workforcePools/POOL_ID/subject/raha@altostrat.com
Autenticação de cargas de trabalho
Alguns clientes têm de interagir com as APIs Google em seu próprio nome. Por exemplo, uma tarefa agendada pode ter de ler dados do BigQuery ou do Cloud Storage sem a intervenção de um utilizador humano.
Os clientes que atuam sem supervisão e em seu próprio nome são denominados cargas de trabalho. Ao contrário da autenticação do utilizador, a autenticação da carga de trabalho combina a autenticação do utilizador e a autorização do cliente num único passo. Por este motivo, um token de autenticação de carga de trabalho codifica a identidade apenas do cliente.
A autenticação e a autorização de cargas de trabalho envolvem as seguintes partes:
Uma carga de trabalho que atua como cliente e utilizador, e em seu próprio nome.
Um servidor de autorizações, no qual as APIs Google se baseiam para autenticar o cliente.
Uma Cloud de Confiance by S3NS API com a qual o cliente interage.
Para aceder às Cloud de Confiance by S3NS APIs, os clientes têm de trabalhar com um servidor de autorizações para fazer o seguinte:
Autentique o cliente.
Autorize o cliente.
Emitir um token para o cliente.
Uma carga de trabalho autenticada também é denominada principal, mas as cargas de trabalho usam identificadores principais diferentes dos utilizadores.
Uma carga de trabalho que faz a autenticação através de uma conta de serviço é um principal da conta de serviço. O principal tem um identificador principal semelhante ao seguinte:
serviceAccount:my-service-account@my-project.s3ns.iam.gserviceaccount.com
Uma carga de trabalho que se autentica através da federação de identidade da carga de trabalho é um principal do Workload Identity Pool. O principal tem um identificador principal semelhante ao seguinte:
principal://iam.googleapis.com/projects/PROJECT_NAME/locations/global/workloadIdentityPools/POOL_ID/subject/SUBJECT_ATTRIBUTE_VALUE
O que se segue?
Leia acerca dos tipos de tokens.