O dispositivo isolado da Vertex AI no Google Distributed Cloud (GDC) fornece APIs e serviços que exigem autenticação. A autenticação é como você prova sua identidade para acessar serviços usando tokens.
Os tokens são objetos digitais que verificam se um autor da chamada forneceu as credenciais adequadas e se elas foram trocadas com sucesso pelo token. O token contém informações sobre a identidade da conta solicitante e o acesso específico que ela está autorizada a ter.
Nesta página, descrevemos como autenticar nas APIs da Vertex AI de maneira programática. Dependendo se você acessa as APIs da Vertex AI como um usuário ou com uma conta de serviço, esta página descreve as etapas para receber um token de autenticação para suas solicitações de API.
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 de usuário:
Anote o endpoint da API que você quer usar.
Conceda à sua conta de usuário o papel correspondente listado em Preparar permissões do IAM para ter acesso ao serviço da Vertex AI que você quer usar.
Faça login no dispositivo isolado do GDC com a conta de usuário que você precisa para interagir com a API:
gdcloud auth login
Receba o token de autenticação:
gdcloud auth print-identity-token --audiences=https://ENDPOINT
Substitua
ENDPOINT
pelo endpoint de serviço que você usa na sua organização. Para mais informações, consulte o status do serviço e os endpoints.Dependendo do uso pretendido do token de autenticação, talvez seja necessário incluir a porta após o endpoint do serviço no caminho de públicos-alvo da seguinte maneira:
- Se você usar uma biblioteca de cliente para sua solicitação, inclua a porta
:443
após o endpoint do serviço no caminho de públicos-alvo. Portanto, o caminho--audiences
no comando precisa serhttps://ENDPOINT:443
. - Se você usar gRPC,
curl
ou chamadas REST programáticas para sua solicitação, não inclua a porta. Portanto, o caminho--audiences
no comando precisa serhttps://ENDPOINT
.
- Se você usar uma biblioteca de cliente para sua 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 que a saída mostra.
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.
Extraia os pares de chaves de serviço da sua conta de serviço.
Instale a biblioteca de cliente
google-auth
:pip install google-auth
Adicione 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 de certificação (CA), comoorg-1-trust-bundle-ca.cert
. Você só precisa desse valor se estiver em um ambiente de desenvolvimento. Caso contrário, omita.ENDPOINT
: o endpoint de serviço que você usa na sua organização. Para mais informações, consulte o status do serviço e os endpoints. Dependendo do uso pretendido do token de autenticação, talvez seja necessário incluir a porta após o endpoint do serviço no caminho do público-alvo da seguinte maneira:- Se você usar uma biblioteca de cliente para sua solicitação, inclua a porta
:443
após o endpoint do serviço no caminho do público-alvo. Portanto, o caminhoaudience
no script precisa ser"https://ENDPOINT:443"
. - Se você usar gRPC,
curl
ou chamadas REST programáticas para sua solicitação, não inclua a porta. Portanto, o caminhoaudience
no script precisa ser"https://ENDPOINT"
.
- Se você usar uma biblioteca de cliente para sua solicitação, inclua a porta
Salve o script Python.
Execute o script Python para buscar o token:
python SCRIPT_NAME
Substitua
SCRIPT_NAME
pelo 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 que a saída mostra.