تعديلات FedCM: مرحلة التجربة والتقييم لإعادة المصادقة التلقائية

نقدّم لك بعض التعديلات على برنامج FedCM، بما في ذلك تجربة نقطة الانطلاق الجديدة لإعادة المصادقة التلقائية.

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

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

التحديثات

هناك بعض التعديلات على تنفيذ برنامج FedCM في Chrome:

للحصول على جميع التحديثات السابقة لواجهة برمجة التطبيقات، يُرجى الاطّلاع على تحديثات واجهة برمجة التطبيقات لإدارة بيانات الاعتماد المتحدّة.

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

إعادة المصادقة التلقائية

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

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

مربّع حوار ينقر عليه المستخدم لإنشاء حساب أو للمصادقة.
مربّع حوار ينقر عليه المستخدم لإنشاء حساب أو للمصادقة

يمكن للجهة المحظورة أن تطلب إعادة المصادقة التلقائية من خلال الاتصال بالرقم navigator.credentials.get() على الرقم autoReauthn: true.

const cred = await navigator.credentials.get({
  identity: {
    providers: [{
      configURL: "https://idp.example/fedcm.json",
      clientId: "1234",
    }],
    // NOTE: We are exploring different API options to expose this
    // functionality here:
    // https://github.com/fedidcg/FedCM/issues/429#issuecomment-1426358523
    // You should expect that, as a result of the origin trial, we'll
    // learn more from developers and browser vendors what works best here.
    autoReauthn: true, // default to false
  },
});

من خلال هذه المكالمة، تحدث إعادة المصادقة التلقائية في الحالات التالية:

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

عند استيفاء الشروط أعلاه، تبدأ محاولة إعادة مصادقة المستخدم تلقائيًا فور استدعاء navigator.credentials.get() في FedCM.

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

التجربة الآن

يمكنك تجربة إعادة المصادقة التلقائية عبر FedCM محليًا من خلال تفعيل علامة Chrome chrome://flags#fedcm-auto-re-authn على الإصدار 112 من Chrome أو إصدار أحدث.

لأغراض الاختبار، يمكنك إعادة ضبط فترة الهدوء التي تبلغ 10 دقائق عن طريق إزالة بيانات المتصفّح.

  1. الانتقال إلى chrome://history
  2. في مربّع سجلّ البحث، أدخِل أصل الجهة المحظورة.
  3. انقر على رمز النقاط الثلاث ⋮ واختر إزالة من السجلّ.
  4. أعِد تشغيل متصفّح Chrome.

المشاركة في مرحلة التجربة والتقييم

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

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

للتسجيل في التجربة الأصلية التابعة لجهة خارجية وتفعيل الميزة على أطراف ثالثة:

  1. يُرجى الانتقال إلى صفحة تسجيل مرحلة التجربة والتقييم.
  2. انقر على الزر تسجيل واملأ النموذج لطلب رمز مميز
  3. أدخِل مصدر العرض على أنّه Web Origin.
  4. ضَع علامة في المربّع مطابقة الجهات الخارجية لإدخال الرمز المميّز باستخدام JavaScript في مصادر أخرى.
  5. انقر على إرسال.
  6. تضمين الرمز المميّز الصادر على جهة خارجية

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

const tokenElement = document.createElement('meta');
tokenElement.httpEquiv = 'origin-trial';
tokenElement.content = 'TOKEN_GOES_HERE';
document.head.appendChild(tokenElement);

استبدِل TOKEN_GOES_HERE برمزك المميّز.

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

إذا كانت لديك ملاحظات أو واجهتك أي مشاكل أثناء الاختبار، يمكنك مشاركتها على crbug.com ضمن المكوِّن Blink>Identity>FedCM.

تصوير أليكس بيرز على Unسبلاش