Autentique e configure o acesso à API numa estação de trabalho

Este documento descreve como autenticar e configurar o acesso à API numa estação de trabalho. Para informações gerais sobre a Google Cloud autenticação, consulte a vista geral da autenticação.

Autentique-se como utilizador com a CLI do Google Cloud

Depois de iniciar o Cloud Workstations, pode aceder aos serviços Google Cloud e à API através das suas contas de utilizador com a CLI gcloud.

  1. Abra um terminal na estação de trabalho. A forma como abre uma janela de terminal depende do IDE que está a usar. Por exemplo, se estiver a usar o editor base das Cloud Workstations, abra um terminal selecionando Terminal > Novo terminal ou premindo Control+Shift+`.
  2. Efetue a autenticação com o seguinte comando:
    gcloud auth login --no-launch-browser
  3. Siga as instruções fornecidas pelo comando para se autenticar no Google Cloud.
  4. Especifique o Google Cloud ID do projeto com o seguinte comando:
    gcloud config set project PROJECT_ID
  5. Ative as Credenciais padrão da aplicação para lhe permitir chamar Google Cloud serviços.
    gcloud auth application-default login
  6. As suas credenciais da CLI estão agora guardadas e disponíveis quando usar a sua estação de trabalho em sessões futuras.gcloud

Emitir um pedido HTTP para uma estação de trabalho

Para emitir um pedido HTTP para uma estação de trabalho, precisa de um token de acesso para uma conta que tenha a função Utilizador do Cloud Workstations nessa estação de trabalho:

  1. Gere uma chave de acesso através do método da API generateAccessToken.
  2. Adicione um cabeçalho HTTP denominado Authorization com o valor Bearer $TOKEN.

Ligue-se à estação de trabalho no seu navegador

A abertura do URL da estação de trabalho no navegador autentica automaticamente através de um redirecionamento para o servidor das estações de trabalho e obtém um token de acesso gerado pelo método da API generateAccessToken. Esta ação redireciona novamente para a sua estação de trabalho e define um cookie de autenticação válido para a sessão atual da estação de trabalho.

Para ignorar este redirecionamento, use o parâmetro de URL _workstationAccessToken:

  1. Gere uma chave de acesso através do método da API generateAccessToken.
  2. Abra o URL da estação de trabalho no navegador e anexe um parâmetro de URL com o seguinte formulário: _workstationAccessToken=TOKEN.

Isto define um cookie de autenticação no seu navegador que permite o acesso para a sessão da estação de trabalho atual. Ignorar o redirecionamento pode ser útil quando o acesso ao servidor da estação de trabalho é bloqueado por políticas de rede ou quando usa iFrames para apresentar a estação de trabalho noutros sites.

Usar a identidade de uma conta de serviço

Se as políticas de segurança da sua organização impedirem que as contas de utilizador tenham as autorizações necessárias, também pode roubar a identidade de uma conta de serviço. Para se fazer passar pela conta de serviço especificada na configuração da estação de trabalho, pode especificar o campo âmbitos da conta de serviço.

        gcloud workstations configs create CONFIG \
            --cluster=CLUSTER \
            --region=REGION \
            --project=PROJECT \
            --service-account=SERVICE_ACCOUNT \
            --service-account-scopes=https://www.googleapis.com/auth/cloud-platform
      
Quando especificado, os utilizadores das estações de trabalho nesta configuração têm de ter autorização iam.serviceAccounts.actAs na conta de serviço. Para mais informações sobre a especificação de âmbitos para a conta de serviço, consulte os Âmbitos de acesso.

O que se segue?