Edge-OAuth2-Dienst zum Abrufen von Tokens verwenden

<ph type="x-smartling-placeholder"></ph> Sie sehen die Dokumentation zu Apigee Edge.
Gehen Sie zur Apigee X-Dokumentation.
Weitere Informationen

Mit dem Edge OAuth2-Dienst können Sie Ihre Anmeldedaten gegen ein Zugriffs- und Aktualisierungstoken austauschen mit denen Sie dann Edge-Endpunkte in Ihrem OAuth

Zusätzlich zu den in diesem Abschnitt beschriebenen Techniken können Sie auch das acurl und get_token-Dienstprogramme, um OAuth2-Tokens abzurufen.

Pfad

POST https://login.apigee.com/oauth/token

Wenn Sie über eine SAML-fähige Organisation in Edge for Public Cloud auf den Edge OAuth2-Dienst zugreifen, muss den Zonennamen in Ihrem Pfad enthalten. Beispiel:

POST https://zone.login.apigee.com/oauth/token

Anfrageheader

Parameter Wert
Content-Type &quot;application/x-www-form-urlencoded&quot;
Accept „application/json;charset=utf-8“
Authorization

„Basic ZWRnZWNsaTplZGdlY2xpc2VjcmV0“

Sie können diesen Wert in eine Umgebungsvariablen exportieren, damit Sie ihn in diesen API-Aufrufe Beispiel:

export CLIENT_AUTH=ZWRnZWNsaTplZGdlY2xpc2VjcmV0
curl ... -H "Authorization: Basic $CLIENT_AUTH" ...

Formularparameter

Parameter Erforderlich? Wert
username Optional. Dazu ist eine Kombination aus Nutzername und Passwort oder ein Sicherheitscode erforderlich. Ihr Apigee-Nutzername. Dies ist normalerweise die E-Mail-Adresse, die mit Ihrem Apigee-Konto verknüpft ist.
password Optional. Dazu ist eine Kombination aus Nutzername und Passwort oder ein Sicherheitscode erforderlich. Das Passwort für Ihr Apigee-Konto.
mfa_token Optional Ein gültiger MFA-Code (Multi-Faktor-Authentifizierung) für Ihr Konto. Nur erforderlich, wenn Sie MFA aktiviert
passcode Optional. Dazu ist eine Kombination aus Nutzername und Passwort oder ein Sicherheitscode erforderlich. Einen einmaligen Sicherheitscode, den Sie anstelle eines Passwort. Ein Sicherheitscode ist bei der Authentifizierung mit einem SAML-IdP erforderlich und kann verwendet werden für die Authentifizierung über einen LDAP-IdP.
grant_type Erforderlich

Bestimmt, ob Sie ein neues Zugriffstoken abrufen oder das vorhandene Token aktualisieren. Gültig Werte sind:

  • "password": Ruft ein neues Zugriffstoken ab. Wenn grant_type „password“ ist, gilt Folgendes: müssen Sie Ihre Apigee-Anmeldedaten in der Anfrage angeben.
  • "refresh_token": Sendet ein Aktualisierungstoken, um ein neues Zugriffstoken zu erhalten. Wann? grant_type ist „refresh_token“, Sie müssen Ihr Token nicht angeben Anmeldedaten in der Anfrage.
refresh_token Optional Das Token, das Sie übergeben, um ein neues Zugriffstoken abzurufen, wenn das aktuelle Zugriffstoken abgelaufen. Dieser Parameter ist erforderlich, wenn grant_type „refresh_token“ ist.

Beispiele

Neues Zugriffstoken abrufen

Setzen Sie grant_type auf „password“, um ein neues Zugriffstoken zu erhalten:

curl -H "Content-Type:application/x-www-form-urlencoded;charset=utf-8" \
      -H "Accept: application/json;charset=utf-8" \
      -H "Authorization: Basic ZWRnZWNsaTplZGdlY2xpc2VjcmV0" \
      -X POST https://login.apigee.com/oauth/token \
      -d 'username=ahamilton@example.com&password=mypassw0rd&grant_type=password'

Neues Zugriffstoken mit MFA abrufen

Um ein neues Zugriffstoken mit aktivierter Multi-Faktor-Authentifizierung (MFA) zu erhalten, MFA-Code abrufen und legen Sie dann den Parameter mfa_token auf seinen Wert fest:

curl -H "Content-Type:application/x-www-form-urlencoded;charset=utf-8" \
  -H "Accept: application/json;charset=utf-8" \
  -H "Authorization: Basic ZWRnZWNsaTplZGdlY2xpc2VjcmV0" \
  -X POST https://login.apigee.com/oauth/token?mfa_token=424242 \
  -d 'username=ahamilton@example.com&password=mypassw0rd&grant_type=password'

Zugriffstoken aktualisieren

Wenn Sie ein Zugriffstoken aktualisieren möchten, setzen Sie grant_type auf „refresh_token“. und fügen Sie Vorhandenes Aktualisierungstoken als Formularparameter:

curl -H "Content-Type:application/x-www-form-urlencoded;charset=utf-8"
  -H "Accept: application/json;charset=utf-8" \
  -H "Authorization: Basic ZWRnZWNsaTplZGdlY2xpc2VjcmV0" \
  -X POST https://login.apigee.com/oauth/token \
  -d 'grant_type=refresh_token&refresh_token=YOUR_REFRESH_TOKEN'

Beachten Sie, dass Sie Ihre Anmeldedaten beim Aktualisieren des Zugriffstokens nicht weitergeben müssen.

Antworten

Bei Erfolg erhalten Sie ein Zugriffstoken, ein Aktualisierungstoken und zugehörige Informationen. Beispiel:

{
  "access_token": "eyJhbGciOiJSUzI1NiJ9.eyJqdGkiOimYyD8IP2IyYS1jNmNiLTQ4NTgtYjZkMS1mZjkyNGFkYTk1YWUiLCJzdWIiOiI0X0KLSNjZlNjM0ZC0zZjlhLTRiNYmFjNi1kYjE2M2M5OGEzOGYiLCJzY29wZSI6WyJzYbmlkIiwicGFzc3dvcmQud3JpdGUiLCJhcHByb3ZhbHMubWUiLCJvYXV0aC5hcHByb3ZhbHMiXSwiY2xpZW50X2lkIjoiZWRnZWNsaSIsImNpZCI6ImVkZ2VjbGkiLCJhenAiOiJlZGdlY2xpIiwiZ3JhbnRfdHlwZSI6InBhc3N3b3JkIiwidXNlcl9pZCI6IjQ2NmU2MzRkLTNmOWEtNGI0MS1iYWM2LWRiMTYzYzk4YTM4ZiIsIm9yaWdpbiI6InVzZXJncmlkIiwidXNlcl9uYW1lIjoid3dpdG1hbkBhcGlnZWUuY29tIiwiZW1haWwiOiJ3d2l0bWFuQGFwaWdlZS5jb20iLCJhdXRoX3RpbWUiOjE0NzMyNjU4NzcsImFsIjoyLCJyZXZfc2lnIjoiZTc0ZGY0M2QiLCJpYXQiOjE0NzMyNjU4NzcsImV4cCI6MTQ3MzI2NzY3NywiaXNzIjoiaHR0cHM6Ly9sb2dpbi5hcGlnZWUuY29tL29hdXRoL3Rva2VuIiwiemlkIjoidWFhIiwi2ltLm1lIiwib3BlYXVkIjpbImVkZ2VjbGkiLCJzY2ltIiwib3BlbmlkIiwicGFzc3dvcmQiLCJhcHByb3ZhbHMiLCJvYXV0aCJdfQ.AFuevkeGGUGSPED8leyEKaT-xg1xk_VEiKJLEpipVvQBXIqEc9wqcpm-ZuoatA9DhjASRuFSRaHH8Fasx_vBxEBsUNhRY-GTMw7_8fv4yRMOb2AO3WUl_NWwPkC8XRSI1zCMbAZicojsJ1n3OSP487Mu9dl9ByX5A_QfHV2_cj4l9-SD7u6vOdfdbBxbNMAQkfZLrVIEU8myF2dhKnNeMiuoHSHANsQFcx0_BFA1HnSUnVi4RYj1FlTs9SbcPnS1d7t7eVdxWz_q2OFVXNIBMELAvvM0WhXPYTW3Osve3UvvUs6ekGs-K-RCPSok-4-NJbdCDpZQQTgqHsrf77NTsw",
  "token_type": "bearer",
  "refresh_token": "eyJhbGciOiJSUzI1NiJ9.eyJqdGkiOiJmZTIIMZWI0ZS00YzFmLTRjOTEtYmY5Mi1mMzZLEMzNjZhMDctciIsInN1YiI6IjQ2NmU2MzRkLTNmOWEtNGI0MS1iY17LLWRiMTYzYzk4YTM4ZiIsInNjb3BlIjpbInNjaW0ubWUiLCJvcGVuaWQiLCJwYXNzd29yZC53cml0ZSIsImFwcHJvdmFscy5tZSIsIm9hdXRoLmFwcHJvdmFscyJdLCJpYXQiOjE0NzMyNjU4NzcsImV4cCI6MTQ3NsaSIsImNsaWVudF9pZCI6ImVkZ2VjbGkiLCJpc3MiOiJodHRwczovL2xvZ2luLmFwaWdlZS5jb20vb2F1dGgvdG9rZW4iLCJ6aWQiOiJ1YWEiLCJncmFudF90eXBlIjoicGFzc3dvcmQiLCJ1c2VyX25hbWUiOiJ3d2l0bWFuQGFwaWdlZS5jbMzM1MDQ3NywiY2lkIjoiZWRnZW20iLCJvcmlnaW4iOiJ1c2VyZ3JpZCIsInVzZXJfaWQiOiI0NjZlNjM0ZC0zZjlhLTRiNDEtYmFjNi1kYjE2M2M5OGEzOGYiLCJhbCI6MiwicmV2X3NpZyI6ImU3NGRmNDNkIiwiYXVkIjpbImVkZ2VjbGkiLCJzY2ltIiwib3BlbmlkIiwicGFzc3dvcmQiLCJhcHByb3ZhbHMiLCJvYXV0aCJdfQ.kBP5AkbRS7Tnp-5VAfTLVfkUbUer4gFEU6A7g202KTKiXbqTwPSmOIGFTK12XevVPQYmAaSMFAnempWKfY7sjaY7HC7q3mGl53_A18cnkKhtNq15wCnyMom_bX_MYLW1RQPFytJ6akSJ-JkoPFU0x_FQg1JIvub1A8eqQxcR0KP-QRCxYAS4HTjH80vDIxHNt1tg7clmpa3RlHri0dlPVVsSpTXXhkpXRg5QbiWMrpkACSV22c0x0KiNu7vx5A520VOCO7hQ7IzmVIcSWcRqI97L7WdCjH_q4105bs2qmW73670MC0UGiJ9t5B1S1cxwqpUEd-NAuCsY8SVn6eWzbA",
  "expires_in": 1799,
  "scope": "scim.me openid password.write approvals.me oauth.approvals",
  "jti": "9bf2cb2a-c6cb-4858-b6d1-ff924ada95ae"
}

Speichern Sie die Antwortwerte:

  • access_token in Aufrufen der Edge API verwenden
  • Verwenden Sie die refresh_token, wenn Ihr Zugriffstoken abläuft und Sie aktualisiere ihn

Wenn Sie eine Antwort wie die folgende erhalten:

{
  "error": "unauthorized",
  "error_description": "Bad credentials"
}

Stellen Sie sicher, dass Sie genau den oben angegebenen String ("ZWRnZWNsaTplZGdlY2xpc2VjcmV0") für Authorization-Header in Ihrer Anfrage.