Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
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:
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:
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 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 caminho --audiences no comando precisa ser https://ENDPOINT.
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:
importosimportgoogle.authfromgoogle.auth.transportimportrequestsimportrequestsasreqsos.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)deftest_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), como org-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 caminho audience 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 caminho audience no script precisa ser "https://ENDPOINT".
Salve o script Python.
Execute o script Python para buscar o token:
pythonSCRIPT_NAME
Substitua SCRIPT_NAME pelo nome que você deu ao script do Python, como token.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.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Informações incorretas ou exemplo de código","incorrectInformationOrSampleCode","thumb-down"],["Não contém as informações/amostras de que eu preciso","missingTheInformationSamplesINeed","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-09-04 UTC."],[],[],null,["# Authenticate API requests\n\nVertex AI on Google Distributed Cloud (GDC) air-gapped appliance provides APIs\nand services that require authentication. Authentication is how you prove your\nidentity to access services by using tokens.\n\nTokens are digital objects that verify a caller provided proper credentials and\nthat they have been successfully exchanged for the token. The token carries\ninformation about the identity of the requesting account and the specific access\nit is authorized to have.\n\nThis page describes how to authenticate to Vertex AI APIs\nprogrammatically. Depending on whether you access the Vertex AI\nAPIs as a user or with a service account, this page describes the steps to get\nan authentication token for your API requests.\n\nChoose one of the following options to get an authentication token: \n\n### User account\n\nFollow these steps to get an authentication token with user permissions:\n\n1. Note [the endpoint of the API](/distributed-cloud/hosted/docs/latest/appliance/application/ao-user/vertex-ai-api-status) you want to use.\n\n2. Gain access to the Vertex AI service you want to use by granting your user account the corresponding role listed in [Prepare IAM permissions](/distributed-cloud/hosted/docs/latest/appliance/application/ao-user/vertex-ai-ao-permissions).\n\n3. Sign in to GDC air-gapped appliance with the user account you have to interact with the API:\n\n gdcloud auth login\n\n4. Get the authentication token:\n\n gdcloud auth print-identity-token --audiences=https://\u003cvar translate=\"no\"\u003eENDPOINT\u003c/var\u003e\n\n Replace \u003cvar translate=\"no\"\u003eENDPOINT\u003c/var\u003e with the service endpoint that you use for your organization. For more information, [view service status and endpoints](/distributed-cloud/hosted/docs/latest/appliance/application/ao-user/vertex-ai-api-status).\n\n Depending on the intended use of the authentication token, you might need to include the port after the service endpoint in the audiences path as follows:\n - If you use a [client library](/distributed-cloud/hosted/docs/latest/appliance/application/ao-user/vertex-ai-install-libraries) for your request, you must include port `:443` after the service endpoint in the audiences path. Therefore, the `--audiences` path in the command must be `https://`\u003cvar translate=\"no\"\u003eENDPOINT\u003c/var\u003e`:443`.\n - If you use gRPC, `curl`, or programmatic REST calls for your request, don't include the port. Therefore, the `--audiences` path in the command must be `https://`\u003cvar translate=\"no\"\u003eENDPOINT\u003c/var\u003e.\n\nThe output displays the authentication token. Add the token to the header of the command-line requests you make, as in the following example: \n\n -H \"Authorization: Bearer \u003cvar translate=\"no\"\u003eTOKEN\u003c/var\u003e\"\n\nReplace \u003cvar translate=\"no\"\u003eTOKEN\u003c/var\u003e with the value for the authentication token that the output displays.\n\n### Service account\n\nFollow these steps to get an authentication token with a service account:\n\n1. Note [the endpoint of the API](/distributed-cloud/hosted/docs/latest/appliance/application/ao-user/vertex-ai-api-status) you want to use.\n\n2. [Set up the service account](/distributed-cloud/hosted/docs/latest/appliance/application/ao-user/vertex-ai-set-up-project#set-up-service) you want to use to access the Vertex AI service.\n\n3. Grant the service account the corresponding role listed in [Prepare IAM permissions](/distributed-cloud/hosted/docs/latest/appliance/application/ao-user/vertex-ai-ao-permissions) to let it gain access to the service you want to use.\n\n4. [Get the service key pairs of your service account](/distributed-cloud/hosted/docs/latest/appliance/platform/pa-user/iam/service-identity#create_and_add_key_pairs).\n\n5. Install the `google-auth` client library:\n\n pip install google-auth\n\n6. Add the following code to a Python script:\n\n import os\n import google.auth\n from google.auth.transport import requests\n import requests as reqs\n\n os.environ[\"GOOGLE_APPLICATION_CREDENTIALS\"] = \"\u003cvar translate=\"no\"\u003ePATH_TO_SERVICE_KEY\u003c/var\u003e\"\n os.environ[\"GRPC_DEFAULT_SSL_ROOTS_FILE_PATH\"] = \"\u003cvar translate=\"no\"\u003eCERT_NAME\u003c/var\u003e\"\n\n # If you use a client library for your request,\n # you must include port :443 after the service endpoint\n # in the audience path.\n audience = \"https://\u003cvar translate=\"no\"\u003eENDPOINT\u003c/var\u003e\"\n\n creds, project_id = google.auth.default()\n print(project_id)\n creds = creds.with_gdch_audience(audience)\n\n def test_get_token():\n sesh = reqs.Session()\n req = requests.Request(session=sesh)\n creds.refresh(req)\n print(creds.token)\n\n if __name__==\"__main__\":\n test_get_token()\n\n Replace the following:\n - \u003cvar translate=\"no\"\u003ePATH_TO_SERVICE_KEY\u003c/var\u003e: the path to the JSON file that contains the key pairs of your service account.\n - \u003cvar translate=\"no\"\u003eCERT_NAME\u003c/var\u003e: the name of the Certificate Authority (CA) certificate file, such as `org-1-trust-bundle-ca.cert`. You only need this value if you are in a development environment. Otherwise, omit it.\n - \u003cvar translate=\"no\"\u003eENDPOINT\u003c/var\u003e: the service endpoint that you use for your organization. For more information, [view service status and endpoints](/distributed-cloud/hosted/docs/latest/appliance/application/ao-user/vertex-ai-api-status). Depending on the intended use of the authentication token, you might need to include the port after the service endpoint in the audience path as follows:\n\n - If you use a [client library](/distributed-cloud/hosted/docs/latest/appliance/application/ao-user/vertex-ai-install-libraries) for your request, you must include port `:443` after the service endpoint in the audience path. Therefore, the `audience` path in the script must be `\"https://`\u003cvar translate=\"no\"\u003eENDPOINT\u003c/var\u003e`:443\"`.\n - If you use gRPC, `curl`, or programmatic REST calls for your request, don't include the port. Therefore, the `audience` path in the script must be `\"https://`\u003cvar translate=\"no\"\u003eENDPOINT\u003c/var\u003e`\"`.\n7. Save the Python script.\n\n8. Run the Python script to fetch the token:\n\n python \u003cvar translate=\"no\"\u003eSCRIPT_NAME\u003c/var\u003e\n\n Replace \u003cvar translate=\"no\"\u003eSCRIPT_NAME\u003c/var\u003e with the name you gave to your Python script, such as `token.py`.\n\nThe output displays the authentication token. Add the token to the header of the command-line requests you make, as in the following example: \n\n -H \"Authorization: Bearer \u003cvar translate=\"no\"\u003eTOKEN\u003c/var\u003e\"\n\nReplace \u003cvar translate=\"no\"\u003eTOKEN\u003c/var\u003e with the value for the authentication token that the output displays."]]