أنت الآن بصدد الاطّلاع على مستندات Apigee Edge.
انتقِل إلىمستندات Apigee X. info
لمحة عن البيانات الوصفية للرمز المميّز
تنشئ Apigee Edge رموز OAuth المميّزة للدخول ورموز إعادة التحميل ورموز التفويض، و توزّعها على التطبيقات التي تمّت مصادقتها. عند الإنشاء، تخزّن Edge هذه الرموز المميّزة ورموز التفويض. لاحقًا، عندما تتلقّى Edge طلبات بيانات من واجهة برمجة التطبيقات واردة تتضمّن هذه الرموز المميّزة أو رموز التفويض، تستخدم Edge المعلومات المخزّنة لتفويض الطلبات.
عندما تنشئ Edge هذه العناصر الخاصة ببروتوكول OAuth، فإنّها تُرفق أيضًا بيانات وصفية بالرمز المميّز أو رمز التفويض. على سبيل المثال، يرتبط رمز الدخول بأزواج من الاسم/القيمة تحدّد وقت انتهاء الصلاحية والتطبيق والمطوّر المرتبطَين به ومعلومات أخرى.
يبدو تمثيل JSON لرمز الدخول في Edge على النحو التالي:
{ "issued_at" : "1372170159093", "application_name" : "ccd1803b-b557-4520-bd62-ddd3abf8e501", "scope" : "READ", "status" : "approved", "api_product_list" : "[Product1,Product2]", "api_product_list_json" : ["Product1", "Product2"], "expires_in" : "3599", //--in seconds "developer.email" : "joe@weathersample.com", "organization_id" : "0", "refresh_token" : "82XMXgDyHTpFyXOaApj8C2AGIPnN2IZe", "client_id" : "deAVedE0W9Z9U35PAMaAJYphBJCGdrND", "access_token" : "shTUmeI1geSKin0TODcGLXBNe9vp", "organization_name" : "apifactory", "refresh_count" : "0" }
إضافة سمات مخصّصة إلى رموز OAuth المميّزة
من المفيد أحيانًا إرفاق بيانات وصفية مخصّصة برمز الدخول. على سبيل المثال، قد ترغب في إضافة اسم مستخدم أو أدوار أو عضويات مجموعة لمستخدم أو رقم تعريف عميل أو معرّف جلسة أو معلومات عشوائية أخرى إلى رمز مميّز. في Apigee Edge، يُطلق على هذه البيانات اسم "السمات المخصّصة ". لاحقًا، عند التحقّق من الرمز المميّز في نطاق طلب بيانات من واجهة برمجة التطبيقات، يتم إتاحة هذه البيانات لوكيل واجهة برمجة التطبيقات من خلال متغيّرات السياق. يمكن أن يتّخذ وكيل واجهة برمجة التطبيقات قرارات تفويض أو توجيه دقيقة استنادًا إلى البيانات المخصّصة المرفقة بالرمز المميّز.
لإرفاق بيانات عشوائية برمز مميّز، استخدِم العنصر <Attributes> في
سياسة OAuthV2. يمكنك
تحديد اسم السمة المخصّصة والقيمة التي يجب أن تأخذها. على سبيل المثال، في ما يلي إعداد سياسة تنشئ رمزًا مميّزًا وتُرفق به سمة مخصّصة باسم "tenant_list"
بالرمز المميّز:
<OAuthV2 name="GenerateAccessToken"> <Operation>GenerateAccessToken</Operation> <ExpiresIn>600000</ExpiresIn> <GenerateResponse /> <SupportedGrantTypes> <GrantType>client_credentials</GrantType> </SupportedGrantTypes> <GrantType>request.queryparam.grant_type</GrantType> <Attributes> <Attribute name="tenant_list" ref="tenant_list_retrieved_from_external_service" display="false"/> </Attributes> </OAuthV2>
يمكنك تحديد سمات مخصّصة متعدّدة، ويمكنك إرفاقها ضمنيًا إما برمز
تفويض (<Operation>GenerateAuthorizationCode</Operation>) أو
برمز مميّز (<Operation>GenerateAccessToken</Operation>) في وقت
الإنشاء.
عند ضبط display على true (القيمة التلقائية)، يتم عرض السمات المخصّصة
في الردّ، حيث يمكن أن يراها التطبيق أو يتم تمريرها إلى المستخدِم النهائي.
عند ضبط display على false، يتم تخزين السمات المخصّصة في مخزن البيانات
، ولكن لا يتم عرضها في رسالة الردّ. في كلتا الحالتَين، تكون البيانات المخصّصة متاحة
للسياسات ضمن وكيل واجهة برمجة التطبيقات بعد التحقّق من الرمز المميّز.
لمزيد من المعلومات عن الخيار display
عرض السمات المخصّصة أو إخفاؤها في الردّ.
الحصول على السمات المخصّصة في وقت التشغيل
عند إجراء طلب إلى OAuthV2/VerifyAccessToken,
تتحقّق Apigee Edge من الرمز المميّز من خلال البحث عنه في مخزن الرموز المميّزة. بعد ذلك، تملأ Apigee Edge مجموعة من متغيّرات السياق التي تحتوي على معلومات عن الرمز المميّز. يشمل ذلك ما يلي:
- organization_name
- developer.id
- developer.app.name
- client_id
- grant_type
- token_type
- access_token
- issued_at
- expires_in //--in seconds
- status
- scope
- apiproduct.name*
إذا كانت هناك أي سمات مخصّصة في الرمز المميّز، يتم إتاحة هذه السمات المخصّصة في
متغيّر سياق بالاسم accesstoken.{custom_attribute}. على سبيل المثال،
لنفترض أنّه تم إصدار رمز مميّز من السياسة الموضّحة أعلاه. بعد التحقّق من هذا الرمز المميّز، سيكون هناك
متغيّر سياق إضافي باسم accesstoken.tenant_list، يحتوي على
القيمة التي تم تخزينها في وقت إنشاء الرمز المميّز.
يمكن أن تشير السياسات أو الشروط بعد ذلك إلى هذه المتغيّرات وتعديل السلوك استنادًا إلى الـ قيم المخزّنة فيها.
ضبط السمات المخصّصة وتعديلها في وقت التشغيل
في بعض الحالات، ستحتاج إلى أن يعدّل وكيل واجهة برمجة التطبيقات البيانات الوصفية المرتبطة برمز الدخول في وقت التشغيل أثناء معالجة طلب بيانات من واجهة برمجة التطبيقات على Apigee Edge. للمساعدة في ذلك، توفّر Apigee سياسات للحصول على سمات الرمز المميّز وضبطها. لمزيد من المعلومات، يُرجى الاطّلاع على سياسة Get OAuth V2 Info وسياسة Set OAuth V2 Info.
AccessToken إلى متغيّر يحتوي على رمز الدخول.
يمكنك أيضًا استخدام واجهات برمجة تطبيقات Edge لتعديل السمات المخصّصة المرفقة برمز مميّز. يُرجى الاطّلاع على مستندات واجهة برمجة التطبيقات لطريقة Update OAuth 2.0 Access Token.