تعرَّف على كيفية دمج مفاتيح المرور في خدمتك.
بنية نظام مفاتيح المرور
يتألف نظام مفاتيح المرور من بعض المكوّنات:
- الجهة المعتمِدة: في سياق مفتاح المرور، تتولّى الجهة المعتمِدة (RP باختصار) عملية إصدار مفتاح المرور والمصادقة. يجب أن يشغّل الطرف المعتمد (RP) برنامجًا على جهاز العميل، أي موقعًا إلكترونيًا أو تطبيقًا ينشئ مفاتيح مرور أو يتيح المصادقة باستخدامها، بالإضافة إلى خادم لتسجيل بيانات الاعتماد التي تنشئها مفاتيح المرور على جهاز العميل وتخزينها والتحقّق منها. يجب ربط تطبيق الأجهزة الجوّالة الخاص بمفاتيح المرور بنطاق خادم RP باستخدام آلية الربط التي يوفّرها نظام التشغيل، مثل روابط الأصول الرقمية.
- جهاز المصادقة: هو جهاز حوسبة، مثل هاتف جوّال أو جهاز لوحي أو كمبيوتر محمول أو كمبيوتر مكتبي، يمكنه إنشاء مفاتيح مرور والتحقّق منها باستخدام ميزة قفل الشاشة التي يوفّرها نظام التشغيل.
- مدير كلمات المرور: برنامج مثبَّت على أجهزة المستخدم النهائي يعمل على توفير مفاتيح المرور وتخزينها ومزامنتها، مثل مدير كلمات المرور من Google.
مسار التسجيل
استخدِم WebAuthn API على موقع إلكتروني أو مكتبة Credential Manager على تطبيق Android لإنشاء مفتاح مرور جديد وتسجيله.
لإنشاء مفتاح مرور جديد، يجب تقديم بعض المكوّنات الأساسية:
- معرّف الجهة المعتمِدة: أدخِل معرّف الجهة المعتمِدة في شكل نطاق ويب.
- معلومات المستخدم: رقم تعريف المستخدم واسمه واسمه المعروض
- بيانات الاعتماد التي يجب استبعادها: معلومات حول مفاتيح المرور المخزّنة سابقًا لمنع التسجيل المكرّر.
- أنواع مفاتيح المرور: ما إذا كنت تريد استخدام الجهاز نفسه ("أداة مصادقة مدمجة") كأداة مصادقة، أو مفتاح أمان قابل للفصل ("أداة مصادقة متوافقة مع عدة منصات أو متجولة"). بالإضافة إلى ذلك، يمكن للمتصلين تحديد ما إذا كان سيتم إتاحة اكتشاف بيانات الاعتماد ليتمكّن المستخدم من اختيار حساب لتسجيل الدخول باستخدامه.
بعد أن يطلب موقع RP إنشاء مفتاح مرور ويؤكّده المستخدم من خلال فتح قفل الشاشة، يتم إنشاء مفتاح مرور جديد ويتم عرض بيانات اعتماد المفتاح العام. أرسِل هذا الرمز إلى الخادم واحفظ رقم تعريف بيانات الاعتماد والمفتاح العام للمصادقة في المستقبل.
تعرَّف على كيفية إنشاء مفتاح مرور وتسجيله بالتفصيل:
- على الويب: إنشاء مفتاح مرور لتسجيلات الدخول بدون كلمة مرور
- على Android: توفير مصادقة سلسة في تطبيقاتك باستخدام مفاتيح المرور من خلال واجهة برمجة التطبيقات Credential Manager
عملية المصادقة
استخدِم واجهة برمجة التطبيقات WebAuthn على موقع إلكتروني أو مكتبة Credential Manager على تطبيق Android للمصادقة باستخدام مفتاح مرور مسجَّل.
لإثبات الهوية باستخدام مفتاح مرور، يجب تقديم بعض المكوّنات الرئيسية:
- معرّف الجهة المعتمِدة: أدخِل معرّف الجهة المعتمِدة في شكل نطاق ويب.
- التحدّي: هو تحدٍّ ينشئه الخادم ويمنع هجمات إعادة الإرسال.
بعد أن يطلب موقع RP إجراء مصادقة باستخدام مفتاح مرور ويؤكّد المستخدم ذلك من خلال فتح قفل الشاشة، يتم عرض بيانات اعتماد المفتاح العام. أرسِلها إلى الخادم وتحقَّق من صحة التوقيع باستخدام المفتاح العام المخزَّن.
تعرَّف على كيفية المصادقة باستخدام مفتاح مرور بالتفصيل:
- على الويب: تسجيل الدخول باستخدام مفتاح مرور من خلال الملء التلقائي للنموذج
- على Android: توفير مصادقة سلسة في تطبيقاتك باستخدام مفاتيح المرور من خلال واجهة برمجة التطبيقات Credential Manager
عمليات الدمج من جهة الخادم
عند إنشاء مفتاح مرور، يجب أن يوفّر الخادم مَعلمات أساسية، مثل سؤال التحقّق ومعلومات المستخدم ومعرّفات بيانات الاعتماد التي يجب استبعادها وغير ذلك. بعد ذلك، يتم التحقّق من صحة بيانات اعتماد المفتاح العام التي تم إنشاؤها والمرسَلة من الجهاز العميل، ويتم تخزين المفتاح العام في قاعدة البيانات. للمصادقة باستخدام مفتاح مرور، يحتاج الخادم إلى التحقّق بعناية من صحة بيانات الاعتماد والتحقّق من التوقيع للسماح للمستخدم بتسجيل الدخول.
يمكنك الاطّلاع على مزيد من المعلومات في أدلة وضع العلامات من جهة الخادم:
- مقدّمة عن تنفيذ مفاتيح المرور من جهة الخادم
- تسجيل مفتاح المرور من جهة الخادم
- المصادقة باستخدام مفتاح مرور من جهة الخادم
آليات المصادقة الحالية (القديمة)
عند إتاحة مفاتيح المرور في خدمتك الحالية، لن تتم عملية الانتقال من آلية المصادقة القديمة، مثل كلمات المرور، إلى مفاتيح المرور في يوم واحد. ندرك أنّك قد تميل إلى إيقاف طريقة المصادقة الأضعف في أقرب وقت ممكن، ولكن قد يؤدي ذلك إلى إرباك المستخدم أو عدم توفّرها لبعض المستخدمين. ننصحك بالاحتفاظ بطريقة المصادقة الحالية في الوقت الحالي.
وهناك بضعة أسباب لذلك:
- هناك مستخدمون في بيئة غير متوافقة مع مفتاح المرور: يتوفّر مفتاح المرور على نطاق واسع في العديد من أنظمة التشغيل والمتصفحات، ولكن لا يمكن للمستخدمين الذين يستخدمون إصدارات أقدم الاستفادة من مفاتيح المرور حتى الآن.
- لم تكتمل بعد منظومة مفاتيح المرور: منظومة مفاتيح المرور في طور التطوّر. ويمكن تحسين تفاصيل تجربة المستخدم والتوافق الفني بين البيئات المختلفة.
- قد لا يكون المستخدمون مستعدين لاستخدام مفتاح مرور بعد: هناك أشخاص يترددون في تجربة منتجات جديدة. ومع تطوّر منظومة مفاتيح المرور، سيتعرّفون على طريقة عملها وأهميتها.
إعادة النظر في آلية المصادقة الحالية
على الرغم من أنّ مفاتيح المرور تجعل عملية المصادقة أبسط وأكثر أمانًا، إلا أنّ الإبقاء على آليات المصادقة القديمة يشبه ترك ثغرة أمنية. ننصحك بإعادة النظر في آليات المصادقة الحالية وتحسينها.
كلمات المرور
يواجه المستخدمون صعوبة في إنشاء كلمات مرور قوية وإدارتها لكل موقع إلكتروني. ننصح بشدة باستخدام مدير كلمات مرور مدمج في النظام أو مدير مستقل. من خلال إجراء تعديل بسيط على نموذج تسجيل الدخول، يمكن للمواقع الإلكترونية والتطبيقات أن تُحدث فرقًا كبيرًا في مستوى الأمان وتجربة تسجيل الدخول. في ما يلي كيفية إجراء هذه التغييرات:
- أفضل ممارسات نموذج تسجيل الدخول (على الويب)
- أفضل الممارسات المتعلّقة بنموذج الاشتراك (على الويب)
- تسجيل دخول المستخدم باستخدام Credential Manager (Android)
المصادقة الثنائية
على الرغم من أنّ استخدام مدير كلمات المرور يساعد المستخدمين في التعامل مع كلمات المرور، إلا أنّ بعض المستخدمين لا يستعينون به. يُعدّ طلب بيانات اعتماد إضافية تُعرف باسم كلمة المرور الصالحة لمرّة واحدة (OTP) إجراءً شائعًا لحماية هؤلاء المستخدمين. يتم عادةً تقديم كلمات المرور الصالحة لمرة واحدة من خلال رسالة إلكترونية أو رسالة SMS أو تطبيق مصادقة، مثل Google Authenticator. وبما أنّ كلمات المرور الصالحة لمرة واحدة هي عادةً عبارة عن نص قصير يتم إنشاؤه ديناميكيًا ويكون صالحًا لفترة زمنية محدودة فقط، فإنّ ذلك يقلّل من احتمالية اختراق الحسابات. هذه الطرق ليست قوية مثل مفتاح المرور، ولكنّها أفضل بكثير من الاكتفاء بكلمة مرور.
في حال اختيار الرسائل القصيرة كطريقة لإرسال كلمة المرور الصالحة لمرة واحدة، اطّلِع على أفضل الممارسات التالية لتبسيط تجربة المستخدم في إدخال كلمة المرور الصالحة لمرة واحدة.
- أفضل الممارسات المتعلّقة بنماذج كلمات المرور الصالحة لمرة واحدة (OTP) عبر الرسائل القصيرة (الويب)
- إثبات الهوية تلقائيًا باستخدام الرسائل القصيرة SMS من خلال واجهة برمجة التطبيقات SMS Retriever API (Android)
اتحاد الهوية
يُعد اتحاد الهوية خيارًا آخر يتيح للمستخدمين تسجيل الدخول بأمان وسهولة. من خلال ميزة "اتحاد الهوية"، يمكن للمواقع الإلكترونية والتطبيقات السماح للمستخدمين بتسجيل الدخول باستخدام هوية المستخدم من موفِّر هوية خارجي. على سبيل المثال، يوفّر خيار تسجيل الدخول باستخدام Google معدّلات إحالات ناجحة رائعة للمطوّرين، ويُفضّله العديد من المستخدمين على المصادقة المستندة إلى كلمة المرور. تتيح ميزة "تجميع الهويات" للموقع الإلكتروني أو التطبيق أيضًا الحصول على معلومات أساسية عن الملف الشخصي للمستخدم. تُعدّ مفاتيح المرور خيارًا رائعًا للمستخدمين والمطوّرين الذين لا يمكنهم أو لا يريدون استخدام ميزة "تجميع الخدمات"، ولكنّهم يبحثون عن بديل أكثر أمانًا وسهولة لكلمات المرور.
يُرجى العِلم أنّه بعد أن يوقف Chrome نهائيًا ملفات تعريف الارتباط التابعة لجهات خارجية في عام 2024، قد تتأثّر بعض أنظمة اتحاد الهوية، وذلك حسب طريقة إنشائها. للحدّ من هذا التأثير، نعمل على تطوير واجهة برمجة تطبيقات جديدة للمتصفّح تُعرف باسم Federated Credential Management API (أو FedCM باختصار). إذا كنت تدير موفِّر هوية، يمكنك الاطّلاع على التفاصيل لمعرفة ما إذا كان عليك استخدام FedCM.
- Federated Credential Management API (الويب، FedCM)
- نظرة عامة على ميزة "تسجيل الدخول باستخدام حساب Google" على الويب (الويب، "تسجيل الدخول باستخدام حساب Google")
- نظرة عامة على ميزة "نقرة واحدة" لتسجيل الدخول على Android (Android، ميزة "نقرة واحدة" لتسجيل الدخول)
"الروابط السحرية"
تسجيل الدخول باستخدام الرابط السحري هو طريقة مصادقة ترسل فيها الخدمة رابط تسجيل دخول عبر البريد الإلكتروني ليتمكّن المستخدم من النقر عليه لإثبات هويته. على الرغم من أنّ هذه الطريقة تساعد المستخدمين في تسجيل الدخول بدون الحاجة إلى تذكُّر كلمة مرور، إلا أنّ التبديل بين المتصفّح/التطبيق وبرنامج البريد الإلكتروني سيؤدي إلى حدوث بعض المشاكل. بالإضافة إلى ذلك، بما أنّ آلية المصادقة تعتمد على البريد الإلكتروني، يمكن أن يؤدي ضعف الأمان لدى مقدّم خدمة البريد الإلكتروني إلى تعريض حسابات المستخدمين للخطر.
مراجع التعلّم
الويب
لدمج مفاتيح المرور في موقعك الإلكتروني، استخدِم Web Authentication API (WebAuthn). لمزيد من المعلومات، يُرجى الاطّلاع على المراجع التالية:
- إنشاء مفتاح مرور لتسجيلات الدخول بدون كلمة مرور: مقالة تناقش كيفية السماح للمستخدمين بإنشاء مفاتيح مرور لموقع إلكتروني.
- تسجيل الدخول باستخدام مفتاح مرور من خلال الملء التلقائي للنماذج: مقالة تناقش كيفية تصميم عملية تسجيل دخول بدون كلمة مرور باستخدام مفاتيح المرور مع مراعاة المستخدمين الحاليين لكلمات المرور.
- تسجيل الدخول باستخدام مفاتيح المرور من خلال ميزة الملء التلقائي للنموذج في تطبيق ويب: درس تطبيقي يتيح لك التعرّف على كيفية تسجيل الدخول باستخدام مفاتيح المرور من خلال ميزة الملء التلقائي للنموذج في تطبيق ويب لإنشاء تجربة أكثر سهولة وأمانًا لتسجيل دخول المستخدمين.
- مساعدة المستخدمين في إدارة مفاتيح المرور بفعالية: للاستفادة بشكل كامل من إمكانات مفاتيح المرور، يجب مراعاة تجربة المستخدم المتعلقة بإدارتها. يوضّح هذا المستند الإرشادات والميزات الاختيارية لتصميم نظام سهل الاستخدام وآمن وفعّال لإدارة مفاتيح المرور.
- مفاتيح مرور آمنة وسلسة: قائمة تحقّق خاصة بعملية النشر: ستساعدك قائمة التحقّق هذه في التعرّف على الجوانب الرئيسية لتنفيذ مفاتيح المرور من أجل تحقيق أفضل نتائج لتجربة المستخدم.
Android
لدمج مفاتيح المرور في تطبيق Android، استخدِم مكتبة Credential Manager. لمزيد من المعلومات، يُرجى الاطّلاع على المراجع التالية:
- تسجيل دخول المستخدم باستخدام Credential Manager: مقالة تناقش كيفية دمج Credential Manager على Android. Credential Manager هي واجهة برمجة تطبيقات Jetpack تتيح استخدام طرق متعددة لتسجيل الدخول، مثل اسم المستخدم وكلمة المرور ومفاتيح المرور وحلول تسجيل الدخول الموحّد (مثل "تسجيل الدخول باستخدام حساب Google") في واجهة برمجة تطبيقات واحدة.
- توفير مصادقة سلسة في تطبيقاتك باستخدام مفاتيح المرور من خلال واجهة برمجة التطبيقات Credential Manager: مقالة تناقش كيفية دمج مفاتيح المرور من خلال Credential Manager على Android.
- كيفية تبسيط رحلات المصادقة باستخدام Credential Manager API في تطبيق Android: تعرَّف على كيفية تنفيذ Credential Manager API لتوفير مصادقة سلسة وآمنة في تطبيقك باستخدام مفاتيح المرور أو كلمات المرور.
- نموذج تطبيق "إدارة بيانات الاعتماد": نموذج رمز برمجي يشغّل "إدارة بيانات الاعتماد" مع توفير مفاتيح المرور.
- دمج "مدير بيانات الاعتماد" مع حل موفّر بيانات الاعتماد | مطوّرو تطبيقات Android
تجربة المُستخدِم
في ما يلي اقتراحات بشأن تجربة المستخدمين مع مفاتيح المرور: