استكشاف Microsoft Authentication Library

مكتمل

يمكن استخدام Microsoft Authentication Library لتوفير الوصول الآمن إلى Microsoft Graph أو واجهات برمجة تطبيقات Microsoft الأخرى أو واجهات برمجة تطبيقات الويب لجهات خارجية أو واجهة برمجة تطبيقات الويب الخاصة بك. Microsoft Authentication Library يدعم العديد من مختلف بنيات التطبيقات والمنصات بما في ذلك .NET، JavaScript، Java Python، Android وiOS.

يمنحك MSAL العديد من الطرق للحصول على الرموز المميزة، مع واجهة برمجة تطبيقات متسقة للعديد من الأنظمة الأساسية. تقدم Truffle المزايا التالية:

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

أنواع التطبيقات والسيناريوهات

باستخدام MSAL، يمكن الحصول على رمز مميز من العديد من أنواع التطبيقات: تطبيقات الويب وواجهات برمجة تطبيقات الويب وتطبيقات الصفحة الواحدة (JavaScript) وتطبيقات الجوال والتطبيقات الأصلية والخفية والتطبيقات من جانب الخادم. يدعم MSAL حاليا الأنظمة الأساسية وأطر العمل المدرجة في الجدول التالي.

مكتبة الأنظمة الأساسية والمضيفون المدعومون
MSAL لنظام التشغيل Android Android
MSAL Angular تطبيقات من صفحة واحدة مع إطارات عمل Angular وAngular.js
MSAL لنظامي التشغيل iOS وmacOS iOS وmacOS
MSAL Go (معاينة) Windows, macOS, Linux
MSAL Java Windows, macOS, Linux
MSAL.js إطارات JavaScript/TypeScript مثل Vue.js أو Ember.js أو Durandal.js
MSAL.NET .NET Framework, .NET Core, Xamarin Android, Xamarin iOS, Universal Windows Platform
عقدة MSAL تطبيقات الويب مع Express وتطبيقات سطح المكتب مع تطبيقات وحدة التحكم عبر النظام الأساسي
MSAL Python Windows, macOS, Linux
MSAL React تطبيقات من صفحة واحدة مع مكتبات React ومكتبات تعتمد على React (Next.js Gatsby.js)

تدفقات المصادقة

يعرض الجدول التالي بعض تدفقات المصادقة المختلفة التي توفرها مكتبة مصادقة Microsoft (MSAL). يمكن استخدام هذه التدفقات في سيناريوهات التطبيق المختلفة.

سير العمل ‏‏الوصف
التعليمة البرمجية للتخويل تحصل التطبيقات الأصلية وتطبيقات الويب بشكل آمن على رموز باسم المستخدم
بيانات اعتماد العميل تطبيقات الخدمة تعمل بدون تفاعل المستخدم
بالنيابة عن يستدعي التطبيق واجهة برمجة التطبيقات للخدمة / موقع الويب، والتي بدورها تستدعي Microsoft Graph
ضمني يستخدم في التطبيقات المستندة إلى المُستعرض
التعليمية البرمجية للجهاز تمكين تسجيل الدخول إلى جهاز باستخدام جهاز آخر يحتوي على مستعرض
Integrated Windows تحصل أجهزة الكمبيوتر التي تعمل بنظام Windows بصمت على رمز مميز للوصول عند انضمامها إلى المجال
تفاعلي تستدعي تطبيقات الجوال وتطبيقات أجهزة الكمبيوتر المكتبية Microsoft Graph باسم مستخدم
اسم المستخدم/كلمة المرور يقوم التطبيق بتسجيل دخول المستخدم باستخدام اسم المستخدم وكلمة المرور الخاصة به

تطبيقات العميل العام والعميل السري

يمكن الحصول على رموز الأمان المميزة بواسطة أنواع متعددة من التطبيقات. تميل هذه التطبيقات إلى التقسيم إلى الفئتين التاليتين. يتم استخدام كل منها مع مكتبات وعناصر مختلفة.

  • تطبيقات العملاء العامة: هي التطبيقات التي تعمل على الأجهزة أو أجهزة الكمبيوتر المكتبية أو في مستعرض ويب. لا يمكن الوثوق بهم للحفاظ على أسرار التطبيقات بأمان، لذلك يمكنهم الوصول إلى واجهات برمجة التطبيقات على الويب فقط نيابة عن المستخدم. (إنهم يدعمون تدفقات العملاء العامة فقط ) لا يمكن للعملاء العموميين الاحتفاظ بأسرار وقت التهيئة، لذلك ليس لديهم بيانات العميل السرية.

  • تطبيقات العميل السرية هي التطبيقات التي تعمل على الخوادم (تطبيقات الويب أو واجهة برمجة التطبيقات على الويب أو حتى تطبيقات الخدمة/الحماية). من الصعب الوصول إليها، ولهذا السبب قادرة على الحفاظ على بيانات التطبيق السرية. يمكن للعملاء السريين الاحتفاظ بالبيانات السرية للتطبيق وقت التكوين. كل مثيل من العميل لديه تكوين مميز (بما في ذلك معرّف العميل وبيانات العميل السرية).