أنت الآن بصدد الاطّلاع على مستندات Apigee Edge.
انتقِل إلى
مستندات Apigee X. info
يمكنك استخدام خدمة Edge OAuth2 لتبديل بيانات الاعتماد برمز دخول ورمز مميز لإعادة التحميل، ثم استخدامها لاستدعاء نقاط نهاية Edge في مهام سير عمل OAuth.
بالإضافة إلى الأساليب الموضّحة في هذا القسم، يمكنك أيضًا استخدام الأداتَين acurl وget_token للحصول على رموز OAuth2 المميزة.
المسار
POST https://login.apigee.com/oauth/token
إذا كنت تريد الوصول إلى خدمة Edge OAuth2 من مؤسسة مفعَّلة فيها SAML في Edge for Public Cloud، عليك تضمين اسم المنطقة في مسارك. على سبيل المثال:
POST https://zone.login.apigee.com/oauth/token
عناوين الطلبات
| المَعلمة | القيمة |
|---|---|
Content-Type |
"application/x-www-form-urlencoded" |
Accept |
"application/json;charset=utf-8" |
Authorization |
"Basic ZWRnZWNsaTplZGdlY2xpc2VjcmV0" يمكنك تصدير هذه القيمة إلى متغيّر بيئة لتتمكّن من إعادة استخدامها في طلبات البيانات من واجهة برمجة التطبيقات هذه. على سبيل المثال: export CLIENT_AUTH=ZWRnZWNsaTplZGdlY2xpc2VjcmV0 curl ... -H "Authorization: Basic $CLIENT_AUTH" ... |
مَعلمات النموذج
| المَعلمة | مطلوب؟ | القيمة |
|---|---|---|
username |
اختيارية. يجب إدخال اسم مستخدم وكلمة مرور أو رمز مرور. | اسم المستخدم في Apigee، وهو عادةً عنوان البريد الإلكتروني المرتبط بحسابك على Apigee |
password |
اختيارية. يجب إدخال اسم مستخدم وكلمة مرور أو رمز مرور. | كلمة المرور لحسابك على Apigee |
mfa_token |
اختياريّ | رمز صالح للمصادقة المتعدّدة العوامل (MFA) لحسابك يجب توفيرها فقط في حال تفعيل المصادقة المتعددة العوامل. |
passcode |
اختيارية. يجب إدخال اسم مستخدم وكلمة مرور أو رمز مرور. | رمز مرور صالح لمرة واحدة يمكنك استخدامه بدلاً من كلمة المرور يجب توفير رمز مرور عند المصادقة باستخدام موفِّر هوية SAML، ويمكن استخدامه للمصادقة باستخدام موفِّر هوية LDAP. |
grant_type |
مطلوب | يحدّد هذا الحقل ما إذا كنت ستحصل على رمز دخول جديد أو ستعيد تحميل الرمز المميز الحالي. القيم الصالحة هي:
|
refresh_token |
اختياري | الرمز المميز الذي ترسله للحصول على رمز دخول جديد عند انتهاء صلاحية رمز الدخول الحالي هذه المَعلمة مطلوبة عندما تكون قيمة grant_type هي "refresh_token". |
أمثلة
الحصول على رمز دخول جديد
للحصول على رمز دخول جديد، اضبط قيمة
grant_typeعلى "كلمة المرور": 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_tokenعلى قيمتها: 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'
إعادة تحميل رمز دخول
لتحديث رمز الدخول، اضبط قيمة
grant_typeعلى "refresh_token" وأضِف الرمز المميز الحالي لإعادة التحميل كمعلَمة نموذج: 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'يُرجى العِلم أنّه ليس عليك إدخال بيانات الاعتماد عند إعادة تحميل رمز الدخول المميز.
الردود
عند النجاح، ستتلقّى رمز دخول ورمز إعادة تحميل ومعلومات ذات صلة. على سبيل المثال:
{ "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" }
احفظ قيم الردّ:
- استخدام
access_tokenفي طلبات البيانات من Edge API - استخدِم
refresh_tokenعندما تنتهي صلاحية رمز الدخول المميز وتحتاج إلى إعادة تحميله
إذا تلقّيت ردًا مثل ما يلي:
{
"error": "unauthorized",
"error_description": "Bad credentials"
}تأكَّد من استخدام السلسلة نفسها المذكورة أعلاه ("ZWRnZWNsaTplZGdlY2xpc2VjcmV0") في عنوان Authorization في طلبك.