Die air-gapped Appliance von Vertex AI auf Google Distributed Cloud (GDC) bietet APIs und Dienste, für die eine Authentifizierung erforderlich ist. Bei der Authentifizierung weisen Sie Ihre Identität nach, um mit Tokens auf Dienste zuzugreifen.
Tokens sind digitale Objekte, die bestätigen, dass ein Aufrufer die richtigen Anmeldedaten angegeben hat und dass diese erfolgreich gegen das Token ausgetauscht wurden. Das Token enthält Informationen zur Identität des anfragenden Kontos und zum spezifischen Zugriff, für den es autorisiert ist.
Auf dieser Seite wird beschrieben, wie Sie sich programmatisch bei Vertex AI APIs authentifizieren. Je nachdem, ob Sie als Nutzer oder mit einem Dienstkonto auf die Vertex AI APIs zugreifen, werden auf dieser Seite die Schritte zum Abrufen eines Authentifizierungstokens für Ihre API-Anfragen beschrieben.
Wählen Sie eine der folgenden Optionen aus, um ein Authentifizierungstoken zu erhalten:
Nutzerkonto
So rufen Sie ein Authentifizierungstoken mit Nutzerberechtigungen ab:
Notieren Sie sich den Endpunkt der API, die Sie verwenden möchten.
Gewähren Sie Ihrem Nutzerkonto die entsprechende Rolle, die unter IAM-Berechtigungen vorbereiten aufgeführt ist, um Zugriff auf den Vertex AI-Dienst zu erhalten, den Sie verwenden möchten.
Melden Sie sich mit dem Nutzerkonto, mit dem Sie mit der API interagieren müssen, bei der air-gapped Appliance von GDC an:
gdcloud auth loginRufen Sie das Authentifizierungstoken ab:
gdcloud auth print-identity-token --audiences=https://ENDPOINTErsetzen Sie
ENDPOINTdurch den Dienstendpunkt, den Sie für Ihre Organisation verwenden. Weitere Informationen finden Sie unter Dienststatus und Endpunkte.Je nach beabsichtigter Verwendung des Authentifizierungstokens müssen Sie möglicherweise den Port nach dem Dienstendpunkt im Pfad der Zielgruppen angeben:
- Wenn Sie eine Clientbibliothek für Ihre Anfrage verwenden, müssen Sie den Port
:443nach dem Dienstendpunkt im Pfad der Zielgruppen angeben. Daher muss der--audiencesPfad im Befehlhttps://ENDPOINT:443sein. - Wenn Sie gRPC,
curloder programmatische REST-Aufrufe für Ihre Anfrage verwenden, geben Sie den Port nicht an. Daher muss der Pfad--audiencesim Befehlhttps://ENDPOINTsein.
- Wenn Sie eine Clientbibliothek für Ihre Anfrage verwenden, müssen Sie den Port
In der Ausgabe wird das Authentifizierungstoken angezeigt. Fügen Sie das Token dem Header der Befehlszeilenanfragen hinzu, die Sie stellen, wie im folgenden Beispiel:
-H "Authorization: Bearer TOKEN"
Ersetzen Sie TOKEN durch den Wert für das Authentifizierungstoken, das in der Ausgabe angezeigt wird.
Dienstkonto
So rufen Sie ein Authentifizierungstoken mit einem Dienstkonto ab:
Notieren Sie sich den Endpunkt der API, die Sie verwenden möchten.
Richten Sie das Dienstkonto ein, mit dem Sie auf den Vertex AI-Dienst zugreifen möchten.
Gewähren Sie dem Dienstkonto die entsprechende Rolle, die unter IAM-Berechtigungen vorbereiten aufgeführt ist, damit es Zugriff auf den Dienst erhält, den Sie verwenden möchten.
Installieren Sie die Clientbibliothek
google-auth:pip install google-authFügen Sie das folgende Skript zu einem Python-Skript hinzu:
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()Ersetzen Sie Folgendes:
PATH_TO_SERVICE_KEY: der Pfad zur JSON-Datei, die die Schlüsselpaare Ihres Dienstkontos enthält.CERT_NAME: der Name der Zertifikatsdatei der Zertifizierungsstelle (Certificate Authority, CA), z. B.org-1-trust-bundle-ca.cert. Dieser Wert ist nur erforderlich, wenn Sie sich in einer Entwicklungsumgebung befinden. Andernfalls lassen Sie ihn weg.ENDPOINT: der Dienstendpunkt, den Sie für Ihre Organisation verwenden. Weitere Informationen finden Sie unter Dienststatus und Endpunkte. Je nach beabsichtigter Verwendung des Authentifizierungstokens müssen Sie möglicherweise den Port nach dem Dienstendpunkt im Pfad der Zielgruppe angeben:- Wenn Sie eine Clientbibliothek für Ihre Anfrage verwenden, müssen Sie den Port
:443nach dem Dienstendpunkt im Pfad der Zielgruppe angeben. Daher muss deraudiencePfad im Skript"https://ENDPOINT:443"sein. - Wenn Sie gRPC,
curloder programmatische REST-Aufrufe für Ihre Anfrage verwenden, geben Sie den Port nicht an. Daher muss deraudiencePfad im Skript"https://ENDPOINT"sein.
- Wenn Sie eine Clientbibliothek für Ihre Anfrage verwenden, müssen Sie den Port
Speichern Sie das Python-Skript.
Führen Sie das Python-Skript aus, um das Token abzurufen:
python SCRIPT_NAMEErsetzen Sie
SCRIPT_NAMEdurch den Namen, den Sie Ihrem Python-Skript gegeben haben, z. B.token.py.
In der Ausgabe wird das Authentifizierungstoken angezeigt. Fügen Sie das Token dem Header der Befehlszeilenanfragen hinzu, die Sie stellen, wie im folgenden Beispiel:
-H "Authorization: Bearer TOKEN"
Ersetzen Sie TOKEN durch den Wert für das Authentifizierungstoken, das in der Ausgabe angezeigt wird.