تتضمن المطالبات الشائعة الموجودة في Azure Ad Oauth الرموز ما يلي:
* AUD (جمهور): يحدد هذا المستلم المقصود من الرمز المميز ، والذي ، بالنسبة إلى Azure AD B2C ، هو معرف التطبيق. يجب على التطبيقات التحقق من صحة هذه القيمة لضمان تطابق معرفها ورفض الرمز المميز إذا لم يكن [3]. الجمهور مرادف للموارد [3].
* ISS (المصدر): تحدد هذه المطالبة خدمة الرمز المميز للأمان (STS) التي شيدت الرمز المميز وأعادته ، ويحدد أيضًا الدليل الذي تمت مصادقة المستخدم. يجب على الطلبات التحقق من صحة هذا الادعاء لضمان أن الرمز المميز جاء من نقطة النهاية المناسبة [3].
* IAT (صدر في): هذا يمثل الوقت الذي تم فيه إصدار الرمز المميز ، في وقت الحقبة [3].
* exp (وقت انتهاء الصلاحية): يشير هذا إلى الوقت الذي يصبح فيه الرمز غير صالح ، ويمثل في وقت الحقبة. يجب أن تستخدم التطبيقات هذا المطالبة للتحقق من صحة العمر المميز [3].
* NBF (ليس من قبل): تحدد هذه المطالبة الوقت الذي يصبح فيه الرمز صالحًا ، في وقت الحقبة. عادة ما يكون هو نفس الوقت الذي تم فيه إصدار الرمز المميز ، ويجب أن يستخدم طلبك هذا المطالبة للتحقق من صحة عمر الرمز المميز [3].
* VER (الإصدار): يشير هذا إلى إصدار رمز المعرف ، كما هو محدد بواسطة Azure AD B2C [3].
* c_hash (علامة التجزئة رمز): مدرج في رمز الهوية فقط عندما يتم إصدار الرمز المميز مع رمز إذن OAUTH 2.0. يمكن استخدامه للتحقق من صحة رمز التفويض [3].
* AT_HASH (تجزئة الرمز المميز للوصول): مدرج في رمز معرف فقط عندما يتم إصدار الرمز المميز مع رمز الوصول إلى OAUTH 2.0 ، واستخدامه للتحقق من صحة رمز الوصول [3].
* nonce: استراتيجية تستخدم للتخفيف من هجمات إعادة التشغيل الرمزية. يمكن للتطبيق الخاص بك تحديد NONCE في طلب التفويض باستخدام معلمة الاستعلام `nonce`. يتم تنبعث القيمة التي تقدمها في الطلب غير المعدلة في مطالبة "nonce" لرمز الهوية فقط [3].
* الفرعي (الموضوع): يمثل هذا المطالبة المدير الذي يؤكد فيه الرمز المعلومات ، مثل مستخدم التطبيق. القيمة غير قابلة للتغيير ولا يمكن إعادة تعيينها أو إعادة استخدامها. يمكن استخدامه لإجراء عمليات التحقق من التفويض بأمان. بشكل افتراضي ، يتم ملء المطالبة الموضوعية بمعرف الكائن للمستخدم في الدليل [3].
* ACR (مرجع فئة سياق المصادقة): يستخدم فقط مع السياسات القديمة [3].
* TFP (سياسة إطار الثقة): اسم السياسة التي تم استخدامها لاكتساب رمز المعرف [3].
* AUTH \ _TIME: الوقت الذي أدخل فيه المستخدم آخر بيانات الاعتماد ، ممثلة في وقت الحقبة. لا يوجد أي تمييز بين تلك المصادقة كونها تسجيل دخول جديد أو جلسة تسجيل واحدة (SSO) أو نوع تسجيل دخول آخر [3].
* SCP (النطاق): يشير هذا إلى الأذونات الممنوحة للمورد لرمز الوصول. يتم فصل أذونات متعددة المستحقة بمساحة [3].
* AZP (الطرف المعتمد): معرف التطبيق لتطبيق العميل الذي بدأ الطلب [3].
* OID: تحتوي هذه المطالبة على المعرف الفريد لكائن في Azure AD ، غير قابل للتغيير ، ولا يمكن إعادة تعيينه أو إعادة استخدامه. يمكن استخدامه لتحديد كائن في الاستعلامات إلى Azure AD [1].
الاستشهادات:
[1] https://stackoverflow.com/questions/40972416/what-jwt-claims-from-azure-ad-tokens-can-be-safely-used-for-user-user
[2] https://stackoverflow.com/questions/70867353/azure-access-token-contains-info-that-i-
[3] https://github.com/microsoftdocs/azure-docs/blob/main/articles/active-directory-b2c/tokens-overview.md
[4] https://www.descope.com/blog/post/noauth
[5] https://learn.microsoft.com/en-us/entra/identity-platform/access-token-claims- reference
[6]
[7] https://learn.microsoft.com/en-us/entra/identity-platform/id-token-claims- reference
[8] https://www.descope.com/blog/post/access-token-vs-refresh-token