الموافقة على رموز الدخول وإلغاؤها

أنت الآن بصدد الاطّلاع على مستندات Apigee Edge.
انتقِل إلى مستندات Apigee X.
info

إبطال رموز الدخول والرموز المميزة لإعادة التحميل

في بعض الحالات، يجب أن تبطل التطبيقات الرموز المميزة أو تلغيها بشكل صريح، مثلاً عندما يسجّل المستخدم الخروج من تطبيق مفعّل فيه بروتوكول OAuth. وإذا أبطلت رمزًا مميزًا، يمكنك إعادة الموافقة عليه في أي وقت قبل انتهاء صلاحيته.

يتم تحديد إجراء إبطال الرمز المميز من خلال مواصفات إبطال الرمز المميز لبروتوكول OAuth 2.0.

توفّر Apigee Edge عملية InvalidateToken التي تتيح لك ضبط نقطة نهاية مخصّصة لإبطال الرموز المميزة. من خلال نشر معرّف الموارد المنتظم (URI) لنقطة النهاية هذه، يمكنك السماح لمطوّري التطبيقات بإبطال الرموز المميزة الصادرة عن Edge.

في ما يلي مثال على إعدادات OAuthV2 وعملية InvalidateToken. في هذه الحالة، يتم إبطال رمز الدخول والرمز المميز لإعادة التحميل المرتبط به. من الناحية الفنية، تم إلغاء كليهما لأنّ علامة التتالي مضبوطة على "صحيح". لمزيد من المعلومات حول طريقة عمل علامة التتالي، راجِع قسم سمات عنصر الرمز المميز أدناه.

<OAuthV2 name="InvalidateToken">
  <Operation>InvalidateToken</Operation>
  <Tokens>
    <Token type="accesstoken" cascade="true">flow.variable</Token>
  </Tokens>
</OAuthV2>

العنصر <Tokens>/<Token>

تحدّد هذه السمة متغيّر التدفق الذي يحدّد الرمز المميّز المطلوب إبطاله. إذا كان من المتوقّع أن يرسل المطوّرون طلب إبطال باستخدام مَعلمة طلب بحث باسم access_token، على سبيل المثال، سيكون متغيّر التدفق الصحيح هو: request.queryparam.access_token. لطلب الرمز المميّز في عنوان HTTP، على سبيل المثال، اضبط هذه القيمة على request.header.access_token.

السمات

  • type (مطلوبة، سلسلة): نوع الرمز المميّز الذي يحدّده المتغيّر المحدّد. القيمتان المسموح بإدراجهما هما accesstoken وrefreshtoken:
    • لإبطال رمز دخول، حدِّد النوع accesstoken.
    • لإبطال كلّ من رمز الدخول ورمز إعادة التحميل، حدِّد النوع refreshtoken. عندما يرى النوع refreshtoken، يفترض Edge أنّ الرمز المميز لإعادة التحميل هو رمز مميز لإعادة التحميل. وفي حال العثور على رمز مميّز لإعادة التحميل، يتم إبطاله. إذا لم يتم العثور على الرمز المميز لإعادة التحميل هذا، يتحقّق Edge مما إذا كان رمز دخول. إذا كان رمز الدخول متاحًا، يتم إبطاله.

      ملاحظة: إذا مرّرت رمزًا مميزًا تم إبطاله إلى سياسة InvalidateToken، لن تعرض السياسة خطأً، على الرغم من أنّك قد تتوقّع ذلك. وليس لهذه العملية أي تأثير.
  • cascade (اختياري، منطقي، القيمة التلقائية: صحيح) الاستخدام الأساسي لهذه السمة هو إبطال رمز مميّز لإعادة التحميل بدون إبطال رمز الدخول المرتبط به. ضَع الحالات التالية في الاعتبار:
    • إبطال رمز مميز لإعادة التحميل فقط وعدم إبطال رمز الدخول المرتبط به لإجراء ذلك، اضبط نوع <Token> على refreshtoken واضبط التتالي على false.
    • إبطال كل من رمز الدخول والرمز المميز لإعادة التحميل لإجراء ذلك، اضبط نوع <الرمز المميز> على accesstoken. يمكن أن تكون قيمة cascade إما true (القيمة التلقائية) أو false. إذا ضبطت القيمة على true، سيتم إبطال كل من رمز الدخول والرمز المميز لإعادة التحميل. إذا ضبطت القيمة على false، سيتم إبطال رمز الدخول، ولن يكون الرمز المميز لإعادة التحميل قابلاً للاستخدام. يُرجى الاطّلاع على الملاحظة أدناه للحصول على مزيد من التوضيح.
    • إبطال رمز دخول وعدم إبطال الرمز المميز لإعادة التحميل المرتبط به غير متاحة. يُرجى الاطّلاع على الملاحظة أدناه للحصول على مزيد من التوضيح.

ملاحظة: لأسباب أمنية، إذا أبطلت رمز دخول، سيتم أيضًا إبطال الرمز المميز لإعادة التحميل المرتبط به. لذلك، لا يمكنك استخدام السمة cascade لإبطال رمز مميّز للوصول فقط. على سبيل المثال، إذا ضبطت نوع <Token> على accesstoken، وضبطت cascade=false، سيتم إبطال رمز الدخول (كما هو متوقّع)، ولكن لن يكون الرمز المميز لإعادة التحميل المرتبط به قابلاً للاستخدام. ولا يمكن استخدامه لإعادة تحميل رمز الدخول الذي تم إبطاله. حالة الاستخدام الأساسية لسمة "التتالي" هي عندما تريد إبطال رمز مميّز لإعادة التحميل فقط. في هذه الحالة، اضبط نوع <الرمز المميز> على refreshtoken، واضبط cascade=false. سيتم إبطال الرمز المميّز لإعادة التحميل، ولكن سيظل الرمز المميّز للوصول المرتبط به صالحًا (إلى أن تنتهي صلاحيته أو يتم إبطاله). لمزيد من المعلومات، يُرجى الاطّلاع على مناقشة المنتدى هذه.

الموافقة على رموز الدخول والرموز المميزة لإعادة التحميل

استخدِم عملية ValidateToken لإعادة الموافقة على رمز مميّز تم إبطاله. أي أنّه عند تطبيق هذه العملية، تتغيّر حالة رمز الدخول أو الرمز المميز لإعادة التحميل المستهدف من "تم إبطاله" إلى "تمت الموافقة عليه". يمكنك التحقّق من صحة أي رمز مميّز تم إبطاله ولم تنتهِ صلاحيته بعد.

<OAuthV2 name="ValidateToken">
  <Operation>ValidateToken</Operation>
  <Tokens>
    <Token type="refreshtoken" cascade="true">flow.variable</Token>
  </Tokens>
</OAuthV2>

العنصر <Tokens>/<Token>

تحدّد هذه السمة متغيّر التدفق الذي يحدّد الرمز المميّز المطلوب التحقّق من صحته. إذا كان من المتوقّع أن يرسل المطوّرون طلب التحقّق من الصحة باستخدام مَعلمة طلب بحث باسم access_token، سيكون متغيّر التدفق الصحيح على النحو التالي: request.queryparam.access_token. لطلب الرمز المميّز في عنوان HTTP، على سبيل المثال، اضبط هذه القيمة على request.header.access_token.

السمات

  • type (مطلوبة، سلسلة) نوع الرمز المميّز الذي يحدّده المتغيّر المحدّد. القيمتان المسموح بإدراجهما هما accesstoken وrefreshtoken.
  • cascade (اختياري، قيمة منطقية): يتم ضبط هذا الخيار تلقائيًا على true، ما يؤدي إلى نقل عملية التحقّق من الصحة إلى الرموز المميزة المرتبطة. وبالتالي، إذا تم تطبيقه على رمز مميّز لإعادة التحميل، سيتم أيضًا التحقّق من صحة رمز الدخول المميز المرتبط به. وفي حال تطبيقه على رمز دخول مميز، يتم أيضًا التحقّق من صحة الرمز المميز لإعادة التحميل المرتبط به. إذا ضبطت هذه القيمة على false، سيتم التحقّق من صحة رمز الدخول أو الرمز المميز لإعادة التحميل المحدّد فقط.