دليل مطوّري مفاتيح المرور للأطراف المعتمِدة

تعرَّف على كيفية دمج مفاتيح المرور في خدمتك.

بنية نظام مفتاح المرور

يتكوَّن نظام مفتاح المرور من بعض المكوّنات:

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

مسار التسجيل

استخدِم WebAuthn API على موقع إلكتروني أو مكتبة "مدير بيانات الاعتماد" في تطبيق Android لإنشاء مفتاح مرور جديد وتسجيله.

لإنشاء مفتاح مرور جديد، هناك بعض المكوّنات الرئيسية التي يجب توفيرها:

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

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

مسار التسجيل

تعرَّف على كيفية إنشاء مفتاح مرور وتسجيله بالتفصيل:

مسار المصادقة

للمصادقة على WebAuthn API على موقع إلكتروني أو استخدام مكتبة "مدير بيانات الاعتماد" على تطبيق Android للمصادقة باستخدام مفتاح مرور مسجَّل

للمصادقة باستخدام مفتاح المرور، هناك مكوّنان رئيسيان يجب تقديمهما:

  • رقم تعريف الجهة المحظورة: قدِّم رقم تعريف الجهة المعتمَدة في شكل نطاق ويب.
  • التحدي: تحدٍّ أنشأه الخادم ويمنع هجمات إعادة تشغيل.

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

مسار المصادقة

تعرَّف بالتفصيل على كيفية المصادقة باستخدام مفتاح المرور:

عمليات الدمج من جهة الخادم

عند إنشاء مفتاح مرور، يحتاج الخادم إلى تقديم مَعلمات رئيسية مثل التحدي ومعلومات المستخدم ومعرّفات بيانات الاعتماد التي يجب استبعادها وغير ذلك. وتتحقق بعد ذلك من بيانات اعتماد المفتاح العام التي تم إنشاؤها والتي تم إرسالها من العميل وتخزّن المفتاح العام في قاعدة البيانات. للمصادقة باستخدام مفتاح مرور، يحتاج الخادم إلى إثبات صحة بيانات الاعتماد بعناية والتحقّق من التوقيع للسماح للمستخدم بتسجيل الدخول.

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

للعثور على قائمة بالمكتبات مفتوحة المصدر، راجع قسم المكتبات في موقع Passkeys.dev أو قائمة من مصادر جماعية لمكتبات WebAuthn. ولإيجاد حل، لدى FIDO Alliance قائمة بخوادم FIDO2 المعتمدة.

آليات المصادقة الحالية (القديمة)

عندما تتيح استخدام مفاتيح المرور في خدمتك الحالية، لن يتم خلال يوم الانتقال من آلية المصادقة القديمة، مثل كلمات المرور إلى مفاتيح المرور. نحن نعلم أنك تميل إلى التخلص من طريقة المصادقة الأضعف في أقرب وقت ممكن، إلا أن هذا قد يتسبب في إرباك المستخدم أو ترك بعض المستخدمين خلفهم. ننصحك بالإبقاء على طريقة المصادقة الحالية في الوقت الحالي.

وهناك بضعة أسباب:

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

مراجعة آلية المصادقة الحالية

على الرغم من أنّ مفاتيح المرور تجعل عملية المصادقة أكثر بساطة وأمانًا، فإنّ الحفاظ على الآليات القديمة أشبه بترك فجوة. وننصح بإعادة النظر في آليات المصادقة الحالية وتحسينها.

كلمات المرور

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

المصادقة الثنائية

على الرغم من أنّ استخدام مدير كلمات المرور يساعد المستخدمين في التعامل مع كلمات المرور، إلا أنّ بعض المستخدمين لا يمكنهم استخدامها. يُعد طلب بيانات اعتماد إضافية تُسمى كلمة المرور لمرة واحدة (OTP) ممارسة شائعة لحماية هؤلاء المستخدمين. يتم توفير كلمات المرور لمرة واحدة (OTP) عبر رسالة إلكترونية أو رسالة قصيرة أو تطبيق مصادقة مثل Google Authenticator. ولأنّ كلمات المرور لمرة واحدة (OTP) تكون عادةً نصًّا قصيرًا يتم إنشاؤه ديناميكيًا وصالحًا فقط لفترة زمنية محدودة، يقلل ذلك من احتمالية الاستيلاء على الحساب. ويُرجى العِلم بأنّ هذه الطرق ليست بالفعالية نفسها مثل مفتاح المرور، ولكنها أفضل بكثير من ترك المستخدمين لكلمة مرور فقط.

إذا اخترت الرسائل القصيرة SMS كطريقة لإرسال كلمة المرور لمرة واحدة (OTP)، يمكنك الاطّلاع على أفضل الممارسات التالية لتسهيل تجربة المستخدم لإدخال كلمة المرور لمرة واحدة (OTP).

اتحاد هويات

يمثّل اتحاد الهوية خيارًا آخر للسماح للمستخدمين بتسجيل الدخول بأمان وسهولة. باستخدام ميزة "توحيد الهوية"، يمكن للمواقع الإلكترونية والتطبيقات السماح للمستخدمين بتسجيل الدخول باستخدام هوية المستخدم من موفّر هوية تابع لجهة خارجية. على سبيل المثال، تساعد ميزة تسجيل الدخول باستخدام حساب Google على توفير إحالات ناجحة رائعة للمطوّرين، ويرى المستخدمون أنّها إجراء أسهل ويفضّلها إجراء المصادقة بكلمة المرور. وتشكّل ميزة "توحيد الهوية" عنصرًا مكمّلاً لاستخدام مفاتيح المرور. يُعد الاشتراك أمرًا رائعًا، حيث يمكن للموقع الإلكتروني أو التطبيق الحصول على معلومات الملف الشخصي الأساسية للمستخدم في خطوة واحدة، بينما تُعد مفاتيح المرور وسيلة رائعة لتسهيل إعادة المصادقة.

ضع في اعتبارك أنه بعد أن يوقف Chrome ملفات تعريف الارتباط التابعة لجهات خارجية في عام 2024، قد تتأثر بعض أنظمة توحيد الهوية اعتمادًا على طريقة إنشائها. وللحدّ من تأثيرها، نعمل حاليًا على تطوير واجهة برمجة تطبيقات جديدة للمتصفّح تُسمى Federated Credential Management API (المعروفة اختصارًا باسم FedCM). إذا كنت تدير موفِّر هوية، يمكنك الاطّلاع على التفاصيل ومعرفة ما إذا كنت بحاجة إلى استخدام FedCM.

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

مراجع التعلُّم

الويب

لدمج مفاتيح المرور في موقعك الإلكتروني، استخدِم Web Authenticator API (WebAuthn). لمعرفة المزيد، تحقق من الموارد التالية:

Android

لدمج مفاتيح المرور في تطبيق Android، استخدِم مكتبة مدير بيانات الاعتماد. لمعرفة المزيد، تحقق من الموارد التالية:

تجربة المُستخدِم

تعرَّف على اقتراحات بشأن تجربة المستخدم المتعلّقة بمفاتيح المرور: