OAuth verwenden (Automotive)

Zum Autorisieren Ihrer Anfragen an annotatePaths ist ein Dienstkonto auf der Zulassungsliste für das verknüpfte 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 über die Identitätsübernahme des Dienstkontos agieren.

  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 mit dem Dienstkonto an Ihren Google-Ansprechpartner für Ihr Unternehmen. Der Bevollmächtigte 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 autorisiert 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 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 die Anleitung in diesem Abschnitt, um über die gcloud CLI ein kurzlebiges OAuth-Token abzurufen. Das Token läuft in 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 in gcloud an:

    gcloud auth login
    

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

  2. Legen Sie Ihr Projekt fest:

    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 im 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 in Anfragen an annotatePaths verwenden können.

Optional: OAuth-Tokenberechtigungen prüfen

Wenn Autorisierungsprobleme auftreten, können Sie Ihre OAuth-Token-Berechtigungen prüfen, indem Sie das Token in die folgende URL einfügen und OAUTH_TOKEN anpassen. (Fügen Sie diesen 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, legen Sie den Bereich wie im vorherigen Abschnitt gezeigt fest.

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 angezeigt wird, dass Endnutzeranmeldedaten von dieser API nicht unterstützt werden, lesen Sie Nutzeranmeldedaten funktionieren nicht.