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

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

ما هو FedCM؟

تُعدّ Federed Credential Management (إدارة بيانات الاعتماد الفيدرالية) أسلوبًا يحافظ على الخصوصية بالنسبة إلى خدمات الهوية الموحّدة (مثل "تسجيل الدخول باستخدام...")، حيث يمكن للمستخدمين تسجيل الدخول إلى المواقع الإلكترونية بدون مشاركة معلوماتهم الشخصية مع خدمة الهوية أو الموقع الإلكتروني.

حالة التنفيذ

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

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

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

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

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

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

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

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

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

مستخدم يوقّع على جهة محظورة باستخدام برنامج FedCM

ما الذي نتوقع أن يتأثر؟

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

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

من الأشخاص الذين يُفترض أن يستخدموا خدمة FedCM؟

نتوقع أن تكون ميزة FedCM مفيدة لك فقط في حال انطباق جميع الشروط التالية:

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

أنت موفِّر الهوية

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

ستتأثّر بالإيقاف التدريجي لملفّات تعريف الارتباط التابعة لجهات خارجية

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

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

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

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

الجهات المحظورة الخاصة بك هي جهات خارجية.

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

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

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

تم تصميم FedCM بحيث لا يتوافق مع البروتوكول ويوفر الوظائف التالية المتعلقة بالمصادقة.

يمكنك الاطّلاع على العرض التوضيحي للتعرّف على آلية عمل المنصة.

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

مستخدم يوقّع على جهة محظورة باستخدام برنامج FedCM

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

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

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

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

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

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

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

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

تفعيل FedCM في إعدادات Chrome على سطح المكتب من خلال إيقاف/تفعيل تسجيل الدخول في الخدمات التابعة لجهات خارجية

خارطة الطريق

نحن نعمل على إجراء عدد من التغييرات في FedCM.

سبق أن تم تطبيق العديد من التعديلات استنادًا إلى الملاحظات. ومن المتوقّع أيضًا أن تواصل التطوّر حتى الربع الرابع من عام 2023 على الأقل لتحقيق الاستقرار. يُرجى الاطّلاع على "التحديثات" لمزيد من التفاصيل.

  • سجلّ التغيير: تعديلات واجهة برمجة التطبيقات الموحّدة لإدارة بيانات الاعتماد

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

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

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

  • CORS: نجري نقاشًا مع Apple وMozilla لضمان تحسين مواصفات عمليات استرجاع البيانات في FedCM.
  • واجهة برمجة تطبيقات متعددة الهوية لموفِّر الهوية (IdP): نستكشف طرقًا لإتاحة استخدام العديد من موفِّري الهوية (IdP) للتعاون بشكل تعاوني باستخدام أداة اختيار حسابات FedCM.
  • واجهة برمجة تطبيقات حالة تسجيل الدخول لموفِّر الهوية: رصدت Mozilla مشكلة في التوقيت، ونحن نستكشف طرقًا يمكن لموفِّر الهوية (IdP) إبلاغ المتصفِّح بحالة تسجيل دخول المستخدم بشكل استباقي من أجل الحد من هذه المشكلة. (تعديل)
  • تسجيل الدخول إلى واجهة برمجة التطبيقات لموفِّر الهوية (IdP): لإتاحة سيناريوهات مختلفة، عندما لا يكون المستخدم مسجّلاً الدخول إلى موفِّر الهوية، يوفّر المتصفح واجهة مستخدم للمستخدم لتسجيل الدخول بدون مغادرة الجهة المحظورة.

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

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

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

يجب توفير سياق آمن (HTTPS أو مضيف محلي) على كلٍّ من موفِّر الهوية والجهة المحظورة في Chrome لاستخدام بروتوكول FedCM.

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

لمعرفة كيفية استخدام واجهة برمجة تطبيقات FedCM، يُرجى الاطّلاع على دليل مطوّري البرامج في FedCM.

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