Jetonları almak için Edge OAuth2 hizmetini kullanma

Apigee Edge belgelerini görüntülüyorsunuz.
. Git: Apigee X belgeleri.
bilgi

Kimlik bilgilerinizi erişim ve yenileme jetonuyla değiştirmek için Edge OAuth2 hizmetini kullanabilirsiniz uç noktaları çağırmak için kullanabileceğiniz bir kod bulma OAuth iş akışları.

Bu bölümde açıklanan tekniklere ek olarak, acurl ve OAuth2 jetonları almak için get_token yardımcı programlarını tıklayın.

Path

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

Edge OAuth2 hizmetine, Genel Bulut için Edge'de SAML özellikli bir kuruluştan erişiyorsanız yolunuzdaki alt bölge adını içermelidir. Örneğin:

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

İstek başlıkları

Parametre Değer
Content-Type "application/x-www-form-urlencoded"
Accept "application/json;charset=utf-8"
Authorization

"Temel ZWRnZWNsaTplZGdlY2xpc2VjcmV0"

Bu değeri bir ortam değişkenine aktarıp bu değerlerde yeniden kullanabilirsiniz API çağrıları. Örneğin:

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

Form parametreleri

Parametre Zorunlu mu? Değer
username İsteğe bağlı. Kullanıcı adı ve şifre kombinasyonu veya şifre kodu gereklidir. Apigee kullanıcı adınız (genellikle Apigee hesabınızla ilişkili e-posta adresidir).
password İsteğe bağlı. Kullanıcı adı ve şifre kombinasyonu veya şifre kodu gereklidir. Apigee hesabınızın şifresi.
mfa_token İsteğe bağlı Hesabınız için geçerli bir çok öğeli kimlik doğrulaması (MFA) kodu. Yalnızca MFA etkin.
passcode İsteğe bağlı. Kullanıcı adı ve şifre kombinasyonu veya şifre kodu gereklidir. şifre. SAML IdP ile kimlik doğrularken şifre kodu gerekir ve kullanılabilir LDAP IDP'si ile kimlik doğrulaması yapmak için kullanılır.
grant_type Zorunlu

Yeni bir erişim jetonu alıp almayacağınızı veya mevcut jetonu yenileyip yenilemeyeceğinizi belirler. Geçerli değerler şunlardır:

  • "password": Yeni bir erişim jetonu alın. grant_type "şifre" olduğunda, Apigee kimlik bilgilerinizi isteğe eklemeniz gerekir.
  • "refresh_token": Yeni bir erişim jetonu almak için yenileme jetonu gönderin. Zaman grant_type "refresh_token" değerine sahip olduğu için kimlik bilgileri olabilir.
refresh_token İsteğe bağlı Mevcut erişim jetonu olduğunda yeni bir erişim jetonu almak için ilettiğiniz jeton süresi doldu. grant_type "refresh_token" değerine ayarlandığında bu parametre gereklidir.

Örnekler

ziyaret edin.

Yeni bir erişim jetonu alın

Yeni bir erişim jetonu almak için grant_type değerini "password" (şifre) olarak ayarlayın:

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'

MFA ile yeni bir erişim jetonu alma

MFA (çok öğeli kimlik doğrulaması) etkinleştirilmiş yeni bir erişim jetonu almak için MFA kodunu al ve ardından mfa_token parametresini değerine ayarlayın:

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'

Erişim jetonunu yenileme

Bir erişim jetonunu yenilemek için grant_type öğesini "refresh_token" olarak ayarlayın. ve Mevcut yenileme jetonunu, form parametresi olarak kullanabilirsiniz:

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'

Erişim kodunuzu yenilerken kimlik bilgilerinizi iletmeniz gerekmediğini unutmayın.

Yanıtlar

İşlem başarılı olursa bir erişim jetonu, yenileme jetonu ve ilgili bilgiler alırsınız. Örneğin, örnek:

{
  "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"
}

Yanıt değerlerini kaydedin:

  • Edge API'ye yapılan çağrılarda access_token kullanma
  • Erişim jetonunuzun süresi dolduğunda ve aşağıdakileri yapmanız gerektiğinde refresh_token kullanın yenile

Aşağıdaki gibi bir yanıt alırsanız:

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

Etiket için yukarıda verilen dizeyi ("ZWRnZWNsaTplZGdlY2xpc2VjcmV0") tam olarak kullandığınızdan emin olun İsteğinizde Authorization başlığı yer alıyor.