get_token verwenden

Sie lesen gerade die Dokumentation zu Apigee Edge.
Zur Dokumentation zuApigee X wechseln.
info

Mit dem get_token(1) Dienstprogramm 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.

Mit get_token haben Sie folgende Möglichkeiten:

  • Zugriffs- oder Aktualisierungstoken abrufen.
  • Tokens zur Verwendung in Variablen und Befehlen in stdout ausgeben.
  • Tokens auf Ihrer Festplatte speichern.

Sie können dann ein gültiges Token in Ihre Anfragen an die Edge API einfügen und ein neues Token abrufen, wenn Ihr Token abläuft.

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

get_token-Syntax

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. Eine Kombination aus Nutzername und Passwort oder ein Passcode ist erforderlich. Ihr Apigee-Nutzername, in der Regel die E-Mail-Adresse, die mit Ihrem Apigee-Konto verknüpft ist. Sie müssen Ihren Nutzernamen oder einen Passcode angeben, wenn Sie get_token zum ersten Mal aufrufen. Sie müssen Ihre E-Mail Adresse erst wieder angeben, wenn die Zugriffs- und Aktualisierungstokens abgelaufen sind. Wenn Sie Tokens für mehrere Nutzer im Cache speichern, müssen Sie Ihren Nutzernamen in jedem Aufruf angeben.
PASSWORD Optional. Eine Kombination aus Nutzername und Passwort oder ein Passcode ist erforderlich. Das Passwort für Ihr Apigee-Konto. Wenn Sie das Passwort weglassen, werden Sie beim ersten Aufruf von get_token und bei allen nachfolgenden Aufrufen ohne gültiges Aktualisierungstoken aufgefordert, es einzugeben. Wenn Sie Ihr Passwort nicht direkt im Befehl verwenden möchten, können Sie stattdessen einen Einmal-Sicherheitscode verwenden.
MFACODE Optional Ein temporärer sechsstelliger Multi-Faktor Authentifizierungs-(MFA) Code. Dieser Code ist erforderlich, wenn Sie -u verwenden und MFA aktiviert haben. Wenn Sie ihn weglassen, werden Sie dazu aufgefordert (außer im Sicherheitscode-Modus). Wenn Sie MFA nicht aktiviert haben, oder einen skriptbasierten Ablauf verwenden, können Sie -m "" angeben, um Eingabeaufforderungen zu vermeiden.
PASSCODE Optional. Eine Kombination aus Nutzername und Passwort oder ein Passcode ist erforderlich. Ein einmaliger Sicherheitscode, den Sie anstelle eines Passworts verwenden können. Ein Passcode ist für die Authentifizierung mit einem SAML-IdP erforderlich und kann für die Authentifizierung mit einem LDAP-IdP verwendet werden.

Beispiel:

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

Bei einem erfolgreichen Aufruf wird ein gültiges Zugriffstoken in stdout ausgegeben und sowohl das Zugriffs- als auch das Aktualisierungstoken werden in ~/.sso-cli gespeichert. Sie können diese Tokens verwenden, bis sie ablaufen, wie unter Ablauf von Tokens beschrieben.

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

get_token zum ersten Mal aufrufen

Wenn Sie bei Ihrem ersten Aufruf keine Optionen angeben, werden Sie von get_token aufgefordert, Folgendes anzugeben:

  • Einen Passcode, wenn Sie sich mit einem SAML-Identitätsanbieter (IdP) authentifizieren.
  • Andernfalls Ihren Nutzernamen, Ihr Passwort und einen temporären MFA-Code.

Im folgenden Beispiel wird get_token zum ersten Mal aufgerufen und eine Kombination aus Nutzername und Passwort mit einem optionalen MFA-Code für die Authentifizierung 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 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 Möglichkeiten:

  • 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 dem Header hinzuzufügen:
    token=$(get_token); curl -H "Authorization: Bearer $token" \
      https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval

    Beachten Sie, dass get_token die Befehlsersetzungssyntax $(...) verwendet, damit es ausgeführt wird.

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

    Beachten Sie, dass get_token die Befehlsersetzungssyntax $(...) verwendet, damit es ausgeführt wird.

Diese Beispielanfragen rufen Details zur Organisation „ahamilton-eval“ ab. Eine vollständige Liste der Edge API-Endpunkte finden Sie in der Apigee Edge API-Referenz.

get_token mit SAML und LDAP verwenden

Das Dienstprogramm get_token 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 aufgefordert, den Nutzernamen für jeden get_token Aufruf anzugeben.

get_token-Cache leeren

Sie können die folgenden optionalen Flags verwenden, um den get_token-Cache zu leeren:

  • --clear-sso-cache

    Leert das Cache-Verzeichnis für SSO_LOGIN_URL unter $HOME/.sso-cli und verwirft alle im Cache gespeicherten Zugriffs- und Aktualisierungstokens für den Server.

  • --clear-all-sso-cache

    Leert 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.