Damit Ihr Anwendungscode die Video Intelligence API verwenden kann, müssen Sie die korrekten Anmeldedaten für Ihre Anwendung einrichten, um ihre Identität für den Dienst zu authentifizieren und sie zum Ausführen von Aufgaben zu autorisieren. (Diese auf Anmeldedaten bezogenen Mechanismen werden Auth-Schemas genannt.)
Die Google Cloud API-Authentifizierung und -Autorisierung (normalerweise als "auth" gruppiert) erfolgt in der Regel über ein Dienstkonto. Mit einem Dienstkonto kann Ihr Code Anmeldedaten für Anwendungen direkt an die Video Intelligence API senden. Ein Dienstkonto wird, wie ein Nutzerkonto, durch eine E-Mail-Adresse dargestellt. Im Gegensatz zu einem Nutzerkonto ist ein Dienstkonto nur einer Anwendung zugeordnet.
API aktivieren
Vor der Authentifizierung müssen Sie die Video Intelligence API aktivieren.
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Video Intelligence API.
-
Create a service account:
-
In the Google Cloud console, go to the Create service account page.
Go to Create service account - Select your project.
-
In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.
In the Service account description field, enter a description. For example,
Service account for quickstart
. - Click Create and continue.
-
Click Done to finish creating the service account.
Do not close your browser window. You will use it in the next step.
-
-
Create a service account key:
- In the Google Cloud console, click the email address for the service account that you created.
- Click Keys.
- Click Add key, and then click Create new key.
- Click Create. A JSON key file is downloaded to your computer.
- Click Close.
-
Set the environment variable
GOOGLE_APPLICATION_CREDENTIALS
to the path of the JSON file that contains your credentials. This variable applies only to your current shell session, so if you open a new session, set the variable again. - Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Video Intelligence API.
-
Create a service account:
-
In the Google Cloud console, go to the Create service account page.
Go to Create service account - Select your project.
-
In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.
In the Service account description field, enter a description. For example,
Service account for quickstart
. - Click Create and continue.
-
Click Done to finish creating the service account.
Do not close your browser window. You will use it in the next step.
-
-
Create a service account key:
- In the Google Cloud console, click the email address for the service account that you created.
- Click Keys.
- Click Add key, and then click Create new key.
- Click Create. A JSON key file is downloaded to your computer.
- Click Close.
-
Set the environment variable
GOOGLE_APPLICATION_CREDENTIALS
to the path of the JSON file that contains your credentials. This variable applies only to your current shell session, so if you open a new session, set the variable again. - Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
Dienstkonto in der Google Cloud Console erstellen
So erstellen Sie ein Dienstkonto mit der Google Cloud Console:
Wählen Sie auf der Seite Anmeldedaten der Google Cloud Console die Option Anmeldedaten erstellen aus.
Wählen Sie als Nächstes unter Dienstkonto die Option Neues Dienstkonto aus.
Geben Sie im Feld Name des Dienstkontos einen Namen für das Dienstkonto ein. Dieser Name wird als Standardname für Ihre Dienstkonto-ID (links von "@" in der generierten Dienstkonto-ID-Adresse) verwendet. Sie können diese Dienstkonto-ID jedoch ändern. Diese Namen sind willkürlich gewählt, aber ist es wichtig, dass Sie sich daran erinnern.
Wählen Sie unter Schlüsseltyp für die meisten neuen Projekte JSON aus.
Klicken Sie auf Erstellen.
Die Google Cloud Console generiert dann einen JSON-Schlüssel (als .json
-Textdatei), fordert Sie zum Herunterladen der Datei auf Ihren Computer auf und zeigt das Dialogfeld Dienstkonto erstellt an.
Der generierte JSON-Schlüssel sollte ähnlich aussehen wie der folgende JSON-Beispielschlüssel:
{ "type": "service_account", "project_id": "PROJECT_ID", "private_key_id": "SOME_NUMBER", "private_key": "-----BEGIN PRIVATE KEY-----\nPRIVATE_KEY\n-----END PRIVATE KEY-----\n", "client_email": "SERVICE_ACCOUNT_EMAIL", "client_id": "...", "auth_uri": "https://accounts.google.com/o/oauth2/auth", "token_uri": "https://accounts.google.com/o/oauth2/token", "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs", "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/SERVICE_ACCOUNT_EMAIL" }
Bewahren Sie die JSON-Datei sicher auf, da sie Ihren privaten Schlüssel enthält (und diese Datei ist die einzige Kopie dieses Schlüssels). Sie müssen in Ihrem Code auf diese Dienstkonto-Schlüsseldatei verweisen, wenn Sie Annotationsanfragen an die Video Intelligence API senden.
Mit Standardanmeldedaten für Anwendungen authentifizieren
Die einfachste Möglichkeit für Anwendungen, sich bei der Video Intelligence API zu authentifizieren, ist die Verwendung von Standardanmeldedaten für Anwendungen (Application Default Credentials, ADC).
Dienste, die ADC verwenden, suchen zuerst nach Anmeldedaten in einer
GOOGLE_APPLICATION_CREDENTIALS
-Umgebungsvariablen. Sofern Sie nicht ausdrücklich verlangen, dass ADC andere Anmeldedaten (zum Beispiel Nutzeranmeldedaten) verwendet, sollten Sie diese Umgebungsvariable so festlegen, dass sie auf Ihre Dienstkonto-Schlüsseldatei verweist. Dies ist die .json
-Datei, die Sie bei der Erstellung eines Dienstkontoschlüssels heruntergeladen haben.
$ export GOOGLE_APPLICATION_CREDENTIALS=PATH_TO_SERVICE_ACCOUNT_FILE