get_token verwenden

Sie sehen die Dokumentation zu Apigee Edge.
Zur Apigee X-Dokumentation
weitere Informationen

Mit dem Dienstprogramm get_token(1) können Sie Ihre Apigee-Anmeldedaten gegen ein Zugriffs- und Aktualisierungstoken austauschen, mit dem Sie auf Edge APIs zugreifen können. Die Tokens können auch mit SAML- und LDAP-Implementierungen von OAuth2-Workflows verwendet werden.

get_token bietet Ihnen folgende Möglichkeiten:

  • Fordern Sie ein Zugriffs- oder Aktualisierungstoken an.
  • Geben Sie Tokens zur Verwendung in Variablen und Befehlen an stdout aus.
  • Speichern Sie Tokens auf dem Laufwerk.

Sie können dann ein gültiges Token in Ihren Anfragen an die Edge-API hinzufügen und ein neues Token erhalten, wenn Ihres abläuft.

Voraussetzung: Bevor Sie get_token verwenden können, müssen Sie es installieren.

Syntax von get_token

Das Dienstprogramm get_token verwendet die folgende Syntax:

get_token -u USERNAME:PASSWORD [-m MFACODE]

oder

get_token -p passcode

Wobei:

Element Erforderlich? Beschreibung
USERNAME Optional. Dazu ist eine Kombination aus Nutzername und Passwort oder ein Sicherheitscode erforderlich. Ihr Apigee-Nutzername, der normalerweise die E-Mail-Adresse ist, die mit Ihrem Apigee-Konto verknüpft ist. Wenn du get_token das erste Mal anrufst, musst du deinen Nutzernamen oder einen Sicherheitscode weitergeben. Sie müssen Ihre E-Mail-Adresse erst dann noch einmal eingeben, wenn das Zugriffs- und Aktualisierungstoken abgelaufen ist. Wenn Sie Tokens für mehr als einen Nutzer im Cache speichern, müssen Sie bei jedem Aufruf Ihren Nutzernamen angeben.
PASSWORD Optional. Dazu ist eine Kombination aus Nutzername und Passwort oder ein Sicherheitscode erforderlich. Das Passwort für Ihr Apigee-Konto. Wenn Sie das Passwort weglassen, werden Sie aufgefordert, es bei der ersten Verwendung von get_token sowie bei allen nachfolgenden Aufrufen ohne gültiges Aktualisierungstoken einzugeben. Wenn Sie Ihr Passwort nicht direkt im Befehl verwenden möchten, können Sie anstelle Ihres Passworts einen Einmalcode-Sicherheitscode verwenden.
MFACODE Optional Ein temporärer sechsstelliger MFA-Code (Multi-Faktor-Authentifizierung). Dieser Code ist erforderlich, wenn Sie -u verwenden und MFA aktiviert ist. Wenn Sie diese Option auslassen, erhalten Sie eine entsprechende Aufforderung (es sei denn, Sie befinden sich im Sicherheitscodemodus). Wenn MFA nicht aktiviert ist oder Sie einen scriptbasierten Ablauf haben, können Sie -m "" angeben, um Aufforderungen zu vermeiden.
PASSCODE Optional. Dazu ist eine Kombination aus Nutzername und Passwort oder ein Sicherheitscode erforderlich. Ein einmaliger Sicherheitscode, den Sie anstelle eines Passworts verwenden können. Ein Sicherheitscode ist bei der Authentifizierung mit einem SAML-IdP erforderlich und kann für die Authentifizierung bei einem LDAP-IdP verwendet werden.

Beispiel:

get_token
get_token -u ahamilton@apigee.com:mypassw0rd -m 424242
get_token -p mypass

Ein erfolgreicher Aufruf gibt ein gültiges Zugriffstoken in stdout aus und speichert sowohl das Zugriffs- als auch das Aktualisierungstoken in ~/.sso-cli. Sie können diese Tokens so lange verwenden, bis sie ablaufen, wie unter Ablauf von Tokens beschrieben.

Nach dem ersten erfolgreichen Aufruf von get_token müssen Sie Ihre Anmeldedaten erst angeben, wenn die Tokens abgelaufen sind.

„get_token“ zum ersten Mal aufrufen

Wenn Sie beim ersten Aufruf keine Optionen angeben, werden Sie von get_token zur Eingabe folgender Informationen aufgefordert:

  • Ein Sicherheitscode, wenn Sie sich bei einem SAML-Identitätsanbieter (IdP) authentifizieren.
  • Ihr Nutzername, Ihr Passwort und ansonsten ein temporärer MFA-Code.

Im folgenden Beispiel wird get_token zum ersten Mal aufgerufen und zur Authentifizierung eine Kombination aus Nutzername und Passwort mit einem optionalen MFA-Code verwendet:

get_token
Enter username:
ahamilton@apigee.com
Enter the password for user 'ahamilton@apigee.com':
[hidden input]
Enter the six-digit code if 'ahamilton@apigee.com' is MFA-enabled or press ENTER:
123456

ey42bGciOiJSUzI1NiJ9.eyJqdGkiOiJhM2YwNjA5ZC1lZTIxLTQ1YjAtOGQyMi04MTQ0MTYxNjNhNTMiLCJzdWIiOiIyZDFl
  <snip>
VlLmNvbSIsInppZCI6InVhYSIsImF1ZCI6WyJlZGdlY2xpIiwic2NpbSIsIm9wZW5pZCIsInBhc3N3b3JkIiwiYXBwcm54242

Zugriffstoken zu einer Anfrage hinzufügen

Nachdem Sie get_token erfolgreich aufgerufen haben, können Sie das Zugriffstoken verwenden, indem Sie es auf verschiedene Arten im Header Authorization Ihrer Aufrufe an die Edge API übergeben. Sie haben folgende Optionen:

  • Kopieren Sie den Inhalt der get_token-Antwort und fügen Sie ihn direkt in Ihren Header ein:
    curl https://api.enterprise.apigee.com/v1/organizations/danger4242-eval \
      -H "Authorization: Bearer B42CnTIYPxr...88NI5Q"
  • Kombinieren Sie Befehle, um das Token abzurufen, und fügen Sie es dem Header hinzu:
    token=$(get_token); curl -H "Authorization: Bearer $token" \
      https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval

    Für die Ausführung von get_token wird die Befehlsersetzungssyntax $(...) verwendet.

  • Rufen Sie get_token im curl-Aufruf auf:
    curl -H "Authorization: Bearer $(get_token)" \
      https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval

    Für die Ausführung von get_token wird die Befehlsersetzungssyntax $(...) verwendet.

Mit diesen Beispielanfragen werden Details zur Organisation „ahamilton-eval“ abgerufen. Eine vollständige Liste der Edge API-Endpunkte finden Sie in der Apigee Edge API-Referenz.

get_token mit SAML und LDAP verwenden

Das get_token-Dienstprogramm kann mit SAML, LDAP oder einem anderen zugrunde liegenden IdP verwendet werden. get_token unterstützt die Verwendung mehrerer SSO-Anmelde-URLs und mehrerer Konten. Ein einzelner Nutzer mit mehreren Konten wird bei jedem get_token-Aufruf aufgefordert, den Nutzernamen anzugeben.

Leeren Sie den get_token-Cache.

Mit den folgenden optionalen Flags können Sie den get_token-Cache leeren:

  • --clear-sso-cache

    Löscht das Cache-Verzeichnis für SSO_LOGIN_URL unter $HOME/.sso-cli. Dabei werden alle im Cache gespeicherten Zugriffs- und Aktualisierungstokens für den Server verworfen.

  • --clear-all-sso-cache

    Löscht alle Verzeichnisse unter $HOME/.sso-cli und verwirft alle im Cache gespeicherten Tokens.


(1) Copyright 2023 Google LLC
Das get_token-Tool wird als „Software“ im Rahmen der Vereinbarung zur Nutzung der Google Cloud Platform zur Verfügung gestellt, einschließlich der dienstspezifischen Nutzungsbedingungen unter https://cloud.google.com/terms/service-terms.