OAuth verwenden (Automotive)

Zum Autorisieren Ihrer Anfragen an annotatePaths ist ein Dienstkonto auf der Zulassungsliste für das zugehörige Google Cloud-Projekt erforderlich. Sie können dann die Identität des Dienstkontos übernehmen und ein OAuth-Token generieren, das als Header in den Anfragen übergeben wird.

Dienstkonto einrichten

Da nur Dienstkonten in der Zulassungsliste annotatePaths aufrufen dürfen, müssen Sie als Dienstkonto die Identitätsübernahme des Dienstkontos ausführen.

  1. Folgen Sie der Anleitung unter Dienstkonto erstellen. Die E-Mail-Adresse des Dienstkontos hat das folgende allgemeine Format:

    SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
    
  2. Senden Sie die E-Mail-Adresse des Dienstkontos an Ihren Google-Kundenbetreuer. Ihr Ansprechpartner fügt dieses Dienstkonto einer Zulassungsliste hinzu, die zum Aufrufen von annotatePaths berechtigt ist.

Nutzer hinzufügen, die die Identität des Dienstkontos übernehmen können

Fügen Sie einen Nutzer hinzu, der berechtigt ist, die Identität des Dienstkontos zu übernehmen:

gcloud iam service-accounts add-iam-policy-binding \
    SERVICE_ACCOUNT \
    --member=user:USER_EMAIL \
    --role=roles/iam.serviceAccountTokenCreator \
    --project=PROJECT_ID

Sie können auch über die Cloud Console Nutzer hinzufügen, die berechtigt sind, die Identität des Dienstkontos zu übernehmen. Weitere Informationen finden Sie unter Dienstkonto erstellen.

Fehlerbehebung, wenn der Befehl fehlschlägt

Wenn dieser Befehl fehlschlägt, bitten Sie einen Projektinhaber, den Befehl für Sie auszuführen oder Ihnen die Rolle roles/iam.serviceAccountAdmin für das Dienstkonto zu gewähren. Dazu führen Sie den folgenden Befehl aus:

gcloud iam service-accounts add-iam-policy-binding \
   SERVICE_ACCOUNT \
    --member=USER_EMAIL \
    --role=roles/iam.serviceAccountAdmin \
    --project=PROJECT_ID

Kurzlebiges OAuth-Token generieren

Wenn Sie annotatePaths mit einem OAuth-Token einrichten möchten, aber keine Umgebung zum Generieren von Tokens eingerichtet haben, verwenden Sie das Verfahren in diesem Abschnitt, um über die gcloud CLI ein kurzlebiges OAuth-Token abzurufen. Das Token läuft nach einer Stunde ab. Weitere Informationen finden Sie unter Kurzlebige Anmeldedaten für ein Dienstkonto erstellen. Die folgenden Schritte sind eine gekürzte Ansicht dieser Anleitung.

  1. Melden Sie sich bei gcloud an:

    gcloud auth login
    

    gcloud öffnet ein Browserfenster und fordert Sie zur Berechtigung auf.

  2. Projekt festlegen

    gcloud config set project PROJECT_ID
    
  3. Rufen Sie mit print-access-token ein kurzlebiges Zugriffstoken ab:

    gcloud auth print-access-token
    

    Dieser Befehl gibt ein Token zurück. Kopieren Sie das Token und fügen Sie es mit dem folgenden Befehl in YOUR_ACCESS_TOKEN ein:

    curl -X POST \
    https://iamcredentials.googleapis.com/v1/projects/-/serviceAccounts/SERVICE_ACCOUNT:generateAccessToken \
    -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
    -H "Content-Type: application/json; charset=utf-8" \
    -d '{"scope": ["https://www.googleapis.com/auth/cloud-platform"],"lifetime": "3600s"}'
    

    Die Befehlszeile gibt das kurzlebige OAuth-Zugriffstoken zurück, das Sie jetzt für Anfragen an annotatePaths verwenden können.

Optional: OAuth-Tokenberechtigungen prüfen

Wenn bei der Autorisierung Probleme auftreten, können Sie die Berechtigungen für OAuth-Tokens prüfen. Fügen Sie dazu das Token in die folgende URL ein und passen Sie OAUTH_TOKEN an. Fügen Sie diese URL in die Adressleiste ein.

https://oauth2.googleapis.com/tokeninfo?access_token=OAUTH_TOKEN

Die Antwort sollte den Bereich https://www.googleapis.com/auth/cloud-platform enthalten. Ist dies nicht der Fall, prüfen Sie, ob Sie den Bereich wie im vorherigen Abschnitt gezeigt richtig festgelegt haben.

OAuth in Produktionsumgebungen verwenden

Eine Anleitung zur Verwendung von OAuth in einer Produktionsumgebung finden Sie unter Authentifizierung bei Google.

Fehlerbehebung

Wenn in Ihrer Anfrage eine Fehlermeldung zurückgegeben wird, dass Anmeldedaten von Endnutzern von dieser API nicht unterstützt werden, finden Sie weitere Informationen unter Nutzeranmeldedaten funktionieren nicht.