أنت تطّلع على مستندات Apigee Edge.
انتقِل إلى مستندات
Apigee X. info
استخدام رموز OAuth التابعة لجهات خارجية
راجِع مقالة استخدام رموّز OAuth التابعة لجهات خارجية.
تحديد عناوين URL متعددة لمعاودة الاتصال
عند استخدام نوع منح "رمز التفويض"، يجب تحديد عنوان URL للرجوع إليه عند تسجيل تطبيق المطوِّر. يحدِّد عنوان URL للرجوع إليه عادةً عنوان URL لتطبيق مخصّص لتلقّي رمز التفويض نيابةً عن تطبيق العميل. بالإضافة إلى ذلك، يتم استخدام سلسلة عنوان URL هذه للتحقّق من الصحة. على العميل إرسال عنوان URL هذا إلى Apigee Edge عند طلب رموز التفويض والرموز المميّزة للوصول، ويجب أن تتطابق مَعلمة redirect_uri مع المَعلمة المسجَّلة. راجِع أيضًا طلب الرموز المميّزة للوصول ورموز التفويض.
على سبيل المثال:
http://myorg-test.apigee.net/weather/oauth/authorizationcode?client_id=123456&response_type=code&redirect_uri=http://example.com/callback&scope=scope1%20scope2&state=abc
هناك حالة استخدام لتحديد عناوين URL متعددة لطلبات إعادة الاتصال في تطبيق وكيل واحد. على سبيل المثال، قد تحتاج إلى المصادقة لنطاقات متعددة. على سبيل المثال:
- http://myexample.com/callback
- http://myexample.uk/callback
- http://myexample.ja/callback
لا يتيح Edge تحديد عناوين URL متعددة لطلبات إعادة الاتصال أو استخدام أحرف البدل عند تسجيل تطبيق مطوِّر. لتنفيذ حالة الاستخدام هذه، يمكنك تحديد عنوان URL فارغ لردّ الاتصال عند تسجيل تطبيق مطوِّر، ثم وضع منطق في سياسة JavaScript للتحقّق من صحة معرّفات الموارد المنتظمة (URI) الواردة لإعادة التوجيه.
تغيير السلوك التلقائي للقيمة المعروضة عند تنفيذ عملية GenerateAuthCode
بشكلٍ تلقائي، تُعرِض عملية GenerateAuthCode في سياسة OAuthV2 رمز إعادة توجيه 302 إلى عنوان URL لردّ الاتصال مع مَعلمة طلب البحث ?code التي تحتوي على رمز التفويض.
في بعض الحالات، قد تحتاج إلى تغيير هذا السلوك. على سبيل المثال، قد تريد عرض استجابة 200 باستخدام تنسيق JSON منظَّم يحتوي على الرمز.
إحدى الطرق لتنفيذ حالة الاستخدام هذه هي ضبط قيمة سمة GenerateResponse في سياسة OAuthV2 على false
.
استخدِم سياسة ExtractVariable للحصول على قيمة رمز التفويض من المتغيّر
oauthv2authcode.{policy_name}.code
. بعد ذلك، يمكنك استخدام
سياسة AssignMessage
لعرض الرمز في حمولة JSON بحالة 200.
تدقيق موافقة المستخدم النهائي على التطبيق
قد يُطلب منك التحقّق من أنّ مستخدم نهائي للتطبيق قد فوّض تطبيقًا. يمكنك استخدام Audit API في Apigee Edge لإجراء ذلك.
نموذج بروتوكول OAuth للتواصل مع جهات خارجية
اطّلِع على نموذج outbound-oauth في مستودع api-platform-samples في Apigee على GitHub. يمكنك استنساخ العيّنة ونشرها وتشغيلها. يستخدم هذا المثال واجهة برمجة التطبيقات Microsoft Azure Translator API لترجمة التغريدات. ولإجراء ذلك، يُجري طلبًا صادرًا للحصول على رمز مميّز للوصول عبر بروتوكول OAuth، ثم يخزّن الرمز المميّز باستخدام سياسات التخزين المؤقت لخدمات API، ويعيد استخدام الرمز المميّز المخزّن مؤقتًا في كل مرة يتم فيها إجراء طلب صادر. بالإضافة إلى ذلك، يتضمّن تطبيق متصفّح توضيحيًا يُستخدَم لطلب الخادم الوكيل لواجهة برمجة التطبيقات.