A Vertex AI no dispositivo com isolamento físico do Google Distributed Cloud (GDC) permite acessar APIs de maneira programática autenticando suas solicitações com tokens. É possível conseguir um token de autenticação usando uma conta de usuário ou de serviço.
Escolha uma das seguintes opções para receber um token de autenticação:
Conta de usuário
Siga estas etapas para receber um token de autenticação com permissões do usuário:
Anote o endpoint da API que você quer usar.
Para acessar o serviço da Vertex AI que você quer usar, conceda à sua conta de usuário o papel correspondente listado em Preparar permissões do IAM.
Faça login no dispositivo GDC com isolamento físico usando a conta de usuário que você precisa para interagir com a API:
gdcloud auth loginReceba o token de autenticação:
gdcloud auth print-identity-token --audiences=https://ENDPOINTSubstitua
ENDPOINTpelo endpoint de serviço que você usa na sua organização. Para mais informações, confira o status e os endpoints do serviço.Dependendo do uso pretendido do token de autenticação, talvez seja necessário incluir a porta após o endpoint de serviço no caminho de públicos-alvo, da seguinte maneira:
- Se você usar uma biblioteca de cliente para a solicitação, inclua a porta
:443após o endpoint de serviço no caminho de públicos-alvo. Portanto, o caminho--audiencesno comando precisa serhttps://ENDPOINT:443. - Se você usar gRPC,
curlou chamadas REST programáticas para sua solicitação, não inclua a porta. Portanto, o caminho--audiencesno comando precisa serhttps://ENDPOINT.
- Se você usar uma biblioteca de cliente para a solicitação, inclua a porta
A saída mostra o token de autenticação. Adicione o token ao cabeçalho das solicitações de linha de comando que você fizer, como no exemplo a seguir:
-H "Authorization: Bearer TOKEN"
Substitua TOKEN pelo valor do token de autenticação exibido na saída.
Conta de serviço
Siga estas etapas para receber um token de autenticação com uma conta de serviço:
Anote o endpoint da API que você quer usar.
Configure a conta de serviço que você quer usar para acessar o serviço da Vertex AI.
Conceda à conta de serviço o papel correspondente listado em Preparar permissões do IAM para que ela tenha acesso ao serviço que você quer usar.
Receba os pares de chaves de serviço da sua conta de serviço.
Instale a biblioteca de cliente do
google-auth:pip install google-authAdicione o seguinte código a um script Python:
import os import google.auth from google.auth.transport import requests import requests as reqs os.environ["GOOGLE_APPLICATION_CREDENTIALS"] = "PATH_TO_SERVICE_KEY" os.environ["GRPC_DEFAULT_SSL_ROOTS_FILE_PATH"] = "CERT_NAME" # If you use a client library for your request, # you must include port :443 after the service endpoint # in the audience path. audience = "https://ENDPOINT" creds, project_id = google.auth.default() print(project_id) creds = creds.with_gdch_audience(audience) def test_get_token(): sesh = reqs.Session() req = requests.Request(session=sesh) creds.refresh(req) print(creds.token) if __name__=="__main__": test_get_token()Substitua:
PATH_TO_SERVICE_KEY: o caminho para o arquivo JSON que contém os pares de chaves da sua conta de serviço.CERT_NAME: o nome do arquivo de certificado da autoridade certificadora (CA, na sigla em inglês), comoorg-1-trust-bundle-ca.cert. Você só precisa desse valor se estiver em um ambiente de desenvolvimento. Caso contrário, omita-o.ENDPOINT: o endpoint de serviço que você usa para sua organização. Para mais informações, confira o status e os endpoints do serviço. Dependendo do uso pretendido do token de autenticação, talvez seja necessário incluir a porta após o endpoint de serviço no caminho do público-alvo, da seguinte maneira:- Se você usar uma biblioteca de cliente para a solicitação, inclua a porta
:443após o endpoint de serviço no caminho do público-alvo. Portanto, o caminhoaudienceno script precisa ser"https://ENDPOINT:443". - Se você usar gRPC,
curlou chamadas REST programáticas para sua solicitação, não inclua a porta. Portanto, o caminhoaudienceno script precisa ser"https://ENDPOINT".
- Se você usar uma biblioteca de cliente para a solicitação, inclua a porta
Salve o script em Python.
Execute o script Python para buscar o token:
python SCRIPT_NAMESubstitua
SCRIPT_NAMEpelo nome que você deu ao script do Python, comotoken.py.
A saída mostra o token de autenticação. Adicione o token ao cabeçalho das solicitações de linha de comando que você fizer, como no exemplo a seguir:
-H "Authorization: Bearer TOKEN"
Substitua TOKEN pelo valor do token de autenticação exibido na saída.