نظرة عامة على واجهة برمجة تطبيقات إدارة بيانات الاعتماد الموحّدة

واجهة برمجة تطبيقات ويب لاتحاد الهوية الذي يحافظ على الخصوصية

ما هو FedCM؟

‫FedCM (إدارة بيانات الاعتماد المُدمَجة) هي نهج يحافظ على الخصوصية في خدمات الهوية المُدمَجة (مثل "تسجيل الدخول باستخدام...") ولا يعتمد على ملفات تعريف الارتباط التابعة لجهات خارجية أو عمليات إعادة التوجيه أثناء التنقّل.

حالة التنفيذ

من الآن فصاعدًا، نخطّط لطرح عدد من الميزات الجديدة استنادًا إلى الملاحظات والآراء التي تلقيناها من موفّري الهوية (IdP) والأطراف الموثوق بها (RP) ومورّدي المتصفّحات. على الرغم من أنّنا نأمل أن يتبنّى مزوّدو الهوية إطار عمل FedCM، يُرجى العِلم أنّ FedCM لا يزال واجهة برمجة تطبيقات قيد التطوير النشط.

للحدّ من التحديات التي تواجهها عند نشر تغييرات غير متوافقة مع الإصدارات القديمة، لدينا اقتراحان لموفّري الهوية:

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

لماذا نحتاج إلى FedCM؟

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

من خلال عملية ربط الهوية، يعتمد الطرف الموثوق به (RP) على موفِّر الهوية (IdP) لمنح المستخدم حسابًا بدون الحاجة إلى اسم مستخدم وكلمة مرور جديدَين.

يُرجى العِلم أنّه يتم إساءة استخدام الآليات التي تعتمد عليها عملية الدمج المتعدد للهويات (إطارات iframe وعمليات إعادة التوجيه وملفات تعريف الارتباط) لتتبُّع المستخدِمين على الويب. بما أنّ وكيل المستخدم لا يمكنه التمييز بين عملية مشاركة الهوية ومحاولة التتبّع، فإنّ الإجراءات التي يتم اتّخاذها للحدّ من الأنواع المختلفة من إساءة الاستخدام تجعل من عملية مشاركة الهوية أمرًا أكثر صعوبة.

توفّر Federated Credential Management API (FedCM) عملية تجريدية خاصة بحالة الاستخدام لعمليات المصادقة الموحّدة على الويب، وذلك من خلال توفير مربّع حوار تتم إدارته من خلال المتصفّح ويتيح للمستخدمين اختيار حسابات من موفّري خدمات التعريف لتسجيل الدخول إلى المواقع الإلكترونية.

يوفّر FedCM رحلة متعددة الخطوات لتحسين الهوية على الويب. في الخطوة الأولى، نركّز على الحد من تأثير القيود المفروضة على ملفات تعريف الارتباط التابعة لجهات خارجية في الهوية المُدمَجة (اطّلِع على قسم "خارطة الطريق" لمعرفة بعض الخطوات الإضافية).

مستخدم يسجّل الدخول إلى جهة محظورة باستخدام "المراسلة عبر السحابة الإلكترونية من Firebase".

ما هي العناصر التي نتوقّع أن تتأثر؟

من خلال جهود المجتمع وأبحاثنا، تبيّن لنا أنّ هناك بعض عمليات الدمج المتعلقة بالدمج المتعدد للهوية والتي تتأثر بقيود ملفات تعريف الارتباط التابعة لجهات خارجية:

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

مَن هم المعنيّون باستخدام FedCM؟

لا نتوقع أن تكون ميزة "إدارة الطلبات المُرسَلة" مفيدة لك إلا في حال استيفاء جميع الشروط التالية:

  1. إذا كنت موفِّر هوية (IdP).
  2. إذا كنت متأثرًا بقيود ملفات تعريف الارتباط التابعة لجهات خارجية
  3. تكون مواقع RP هي مواقع إلكترونية تابعة لجهات خارجية. إذا كانت المواقع الإلكترونية التي تشير إليها هي مواقع إلكترونية ذات صلة بشكلٍ ذي مغزى، قد يكون من الأفضل استخدام مجموعات المواقع الإلكترونية الذات الصلة.

أنت موفِّر هوية (idP)

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

إذا كنت متأثرًا بقيود ملفات تعريف الارتباط التابعة لجهات خارجية

يجب عدم استخدام FedCM إلا إذا كان الدمج الحالي يتأثّر بحدود ملفات تعريف الارتباط التابعة لجهات خارجية.

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

إذا لم يكن هناك تأثير يمكن اكتشافه في عملية الدمج بدون ملفات تعريف الارتباط التابعة لجهات خارجية، يمكنك مواصلة استخدام عملية الدمج الحالية بدون FedCM.

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

الجهات الخارجية المحظورة

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

كيف سيتفاعل المستخدمون مع FedCM؟

ينصب تركيز FedCM بشكل أساسي على تخفيف تأثير قيود ملفات تعريف الارتباط التابعة لجهات خارجية. يمكن للمستخدمين تفعيل FedCM أو إيقافه في إعدادات Chrome.

تم تصميم FedCM ليكون مستقلاً عن البروتوكول، ويقدّم الوظائف التالية المرتبطة بالمصادقة.

اطّلِع على العرض التجريبي لمعرفة كيفية عمل هذه الميزة.

تسجيل الدخول إلى جهة اعتماد

يُسجِّل مستخدم الدخول إلى جهة محظورة باستخدام FedCM.

عندما يصل المستخدم إلى الموقع الإلكتروني للجهة المعتمَدة (RP)، سيظهر مربّع حوار لتسجيل الدخول إلى FedCM في حال سجَّل المستخدم الدخول إلى موفِّر الهوية (idP).

إذا لم يكن لدى المستخدم حساب على مقدّم الخدمة (RP) لدى موفّر الهوية (IdP)، يظهر مربّع حوار تسجيل مع نص بيان الإفصاح الإضافي، مثل بنود خدمة مقدّم الخدمة (RP) و سياسة الخصوصية في حال توفّرها.

يمكن للمستخدم إكمال عملية تسجيل الدخول من خلال النقر على متابعة بصفتك.... في حال نجاح العملية، يخزِّن ال browser حقيقة أنّ المستخدم قد أنشأ حسابًا موحَّدًا على RP مع موفِّر الهوية.

من المتوقّع أن تعمل نقاط البيع على المتصفّحات التي لا تتوافق مع بروتوكول FedCM. يجب أن يتمكّن المستخدمون من استخدام عملية تسجيل دخول حالية غير مستندة إلى FedCM. مزيد من المعلومات حول كيفية تسجيل الدخول في FedCM

إعدادات تفعيل FedCM أو إيقافه

يمكن للمستخدمين تفعيل ميزة "إدارة المحتوى في المقاييس" أو إيقافها في الإعدادات على Chrome على Android. انتقِل إلى الإعدادات > إعدادات الموقع الإلكتروني > تسجيل الدخول باستخدام حساب تابع لجهة خارجية، ثم غيِّر التبديل.

تفعيل FedCM في إعدادات Chrome على الأجهزة الجوّالة من خلال تفعيل ميزة "تسجيل الدخول إلى خدمات تابعة لجهات خارجية"

ويمكنهم إجراء ذلك نفسه في Chrome على الكمبيوتر المكتبي من خلال الانتقال إلى chrome://settings/content/federatedIdentityApi.

تفعيل FedCM في إعدادات Chrome على الكمبيوتر المكتبي من خلال تفعيل ميزة "تسجيل الدخول في الخدمات التابعة لجهات خارجية"

فترة الانتظار بين الإشعارات

إذا أغلق المستخدم واجهة المستخدم يدويًا، ستتم إضافة إدخال مؤقت إلى واجهة مستخدم الإعدادات ولن يتم عرض واجهة المستخدم في الموقع الإلكتروني نفسه لفترة زمنية. ستتم إعادة تفعيل واجهة المستخدم بعد هذه الفترة، ولكن سيتم تمديد المدة بشكلٍ كبير عند إغلاق التطبيق بشكلٍ متتالي. على سبيل المثال، في Chrome:

عدد المرات المتتالية التي تم فيها إغلاق التطبيق الفترة الزمنية التي تم فيها منع الطلب من FedCM
1 ساعتان
2 One day
3 أسبوع
4+ أربعة أسابيع

قد تحدِّد المتصفّحات الأخرى فترات استراحة خاصة بها ومختلفة.

يمكن للمستخدمين إعادة تفعيل FedCM في RP يدويًا إما من خلال الانتقال إلى صفحة الإعدادات أو النقر على واجهة مستخدم PageInfo (رمز قفل بجانب شريط عنوان URL) وإعادة ضبط الإذن.

خارطة الطريق

نحن نعمل على طرح عدد من التغييرات على FedCM. يمكنك الاطّلاع على التحديثات لمعرفة المزيد من التفاصيل.

  • سجلّ التغييرات: تعديلات على Federated Credential Management API

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

  • إتاحة إطار iframe من مصدر مختلف: يمكن لموفّري الهوية (IdP) استدعاء FedCM من داخل إطار iframe من مصدر مختلف (تعديل).
  • زر مخصّص: يمكن لموفّري الهوية عرض هوية المستخدِم المتكرّر على زر تسجيل الدخول من داخل إطار iframe تابع لموفّر الهوية من مصدر مختلف (تعديل).
  • نقطة نهاية المقاييس: توفّر مقاييس الأداء لموفّري الهوية.

بالإضافة إلى ذلك، هناك مشكلات لم يتم حلها ونستكشفها بنشاط بما في ذلك اقتراحات محددة نقوم بتقييمها أو وضع نماذج أولية لها:

وأخيرًا، هناك إجراءات ما زلنا نعتقد أنّه يجب تنفيذها، وذلك استنادًا إلى الملاحظات الواردة من مراجعي Mozilla وApple وTAG المستخدمين. نعمل على تقييم أفضل الحلول لهذه الأسئلة المفتوحة:

  • تحسين فهم المستخدمين لمقصود البحث ومطابقته: كما لاحظت Mozilla، نود مواصلة استكشاف صيغ تجربة المستخدم المختلفة ومناطق العرض، بالإضافة إلى معايير التفعيل.
  • سمات الهوية والإفصاح الانتقائي: كما أشار المراجعون في TAG، نودّ توفير آلية لمشاركة سمات الهوية بشكل أكثر أو أقل بشكل انتقائي (مثل عناوين البريد الإلكتروني والفئات العمرية وأرقام الهواتف وما إلى ذلك).
  • تحسين خصائص الخصوصية: وفقًا لما اقترحته Mozilla في موقفها بشأن المعايير، نود مواصلة استكشاف آليات لتقديم ضمانات أفضل للخصوصية، مثل إخفاء هوية موفِّر الهوية والمعرّفات الموجَّهة.
  • العلاقة مع WebAuthn: وفقًا لما اقترحته Apple، نحن متحمّسون للغاية لمعرفة مدى التقدّم في استخدام مفاتيح المرور والعمل على توفير تجربة متّسقة ومتناسقة بين FedCM وكلمات المرور وWebAuthn وWebOTP.
  • حالة تسجيل الدخول: كما اقترحت Apple من خلال واجهة برمجة تطبيقات حالة تسجيل الدخول الخاصة بـ Privacy CG، نفترض أنّ حالة تسجيل دخول المستخدم هي معلومات مفيدة يمكن أن تساعد المتصفّحات في اتخاذ قرارات مدروسة، ونحن متحمّسون لمعرفة الفرص المتاحة. (تعديل)
  • المؤسسات والتعليم: كما هو واضح في مجموعة عمل FedID، لا تزال هناك العديد من حالات الاستخدام التي لا توفّر لها FedCM خدمات جيدة ونريد العمل عليها، مثل تسجيل الخروج من قناة التقديم (إمكانية أن يرسل موفّر الهوية إشارة إلى مقدّمي الخدمات لتسجيل الخروج) ودعم SAML.
  • العلاقة بطلبات المستندات/الشهادات المرسَلة عبر الأجهزة الجوّالة/غير ذلك: يُرجى مواصلة العمل لفهم كيفية تناسب هذه الطلبات مع FedCM، على سبيل المثال من خلال واجهة برمجة التطبيقات لخدمة طلب المستندات عبر الأجهزة الجوّالة.

استخدام واجهة برمجة التطبيقات FedCM API

يجب أن يكون لديك سياق آمن (HTTPS أو localhost) في كلّ من موفّر الهوية وموفّر الخدمة في Chrome لاستخدام FedCM.

للدمج مع FedCM، يجب إنشاء ملف معروف وملف إعداد ونقاط نهاية لقائمة الحسابات وإصدار التأكيد والبيانات الوصفية للعميل (اختياري). ومن ثم، يعرض FedCM واجهات برمجة تطبيقات JavaScript التي يمكن للجهات المحظورة استخدامها لتسجيل الدخول من خلال موفِّر الهوية.

للتعرّف على كيفية استخدام FedCM API، يمكنك الاطّلاع على دليل مطوّري FedCM.

التفاعل مع الملاحظات ومشاركتها

الامتثال لقوانين الخصوصية الإلكترونية

يتضمن استخدام FedCM، سواءً بصفتها مزوّدًا لخدمات الهوية أو مقدّمًا للخدمات، تخزين المعلومات على معدات المستخدم الطرفية أو الوصول إلى المعلومات المخزّنة فيها، وبالتالي هو نشاط يخضع لقوانين الخصوصية الإلكترونية في المنطقة الاقتصادية الأوروبية (EEA) والمملكة المتحدة بشكل عام ويتطلّب موافقة المستخدم. تقع على عاتقك مهمة تحديد ما إذا كان استخدامك لـ FedCM ضروريًا بشكل صارم لتقديم خدمة على الإنترنت طلبها المستخدم صراحةً، وبالتالي يكون معفى من متطلبات الموافقة. لمزيد من المعلومات، ننصحك بقراءة الأسئلة الشائعة المتعلقة بالامتثال للسياسات المتعلّقة بالخصوصية في "مبادرة حماية الخصوصية".