به روز رسانی FedCM: نسخه آزمایشی برای احراز هویت مجدد خودکار

معرفی چند به روز رسانی برای FedCM از جمله آزمایشی مبدا جدید برای احراز هویت مجدد خودکار.

API مدیریت اعتبار فدرال (FedCM) یک API وب برای فدراسیون حفظ حریم خصوصی است. با فدراسیون هویت، یک RP (طرف متکی) به یک IdP (ارائه‌دهنده هویت) برای ارائه یک حساب کاربری بدون نیاز به نام کاربری و رمز عبور جدید متکی است.

FedCM یک API هدفمند است که به مرورگر اجازه می دهد تا زمینه تبادل اطلاعات RP و IdP را درک کند، کاربر را از اطلاعات و سطوح امتیازی که به اشتراک گذاشته می شود آگاه کند و از سوء استفاده ناخواسته جلوگیری کند.

به روز رسانی ها

چند به روز رسانی برای پیاده سازی FedCM کروم وجود دارد:

برای همه به‌روزرسانی‌های گذشته API ، به‌روزرسانی‌های API مدیریت اعتبار فدرال را بررسی کنید.

آخرین نسخه FedCM شامل یک ویژگی جدید احراز هویت خودکار است که به کاربران امکان می دهد پس از احراز هویت اولیه با استفاده از FedCM دوباره به طور خودکار احراز هویت شوند. احراز هویت مجدد خودکار به عنوان نسخه آزمایشی اصلی در Chrome 112 در دسترس است.

احراز هویت مجدد خودکار

در حال حاضر، پس از اینکه کاربر یک حساب فدرال روی یک RP با یک IdP از طریق FedCM ایجاد کرد ، دفعه بعد که از وب‌سایت بازدید کرد، باید همان مراحل را در رابط کاربری طی کند. به این معنا که برای ادامه روند ورود به سیستم، باید صریحاً تأیید و احراز هویت کنند. از آنجایی که یکی از اهداف اصلی FedCM جلوگیری از ردیابی مخفیانه است، این تجربه کاربری (UX) قبل از ایجاد حساب فدرال توسط کاربر منطقی است، اما پس از اینکه کاربر یک بار آن را انجام داد، غیرضروری و دست و پا گیر می شود. پس از اینکه کاربر اجازه برقراری ارتباط بین RP و IdP را صادر کرد، هیچ مزیتی برای حفظ حریم خصوصی یا امنیتی برای اعمال تأیید صریح کاربر دیگر برای چیزی که قبلاً قبلاً تأیید کرده است وجود ندارد. به همین دلیل است که Chrome یک UX ساده‌تر را معرفی می‌کند که RP می‌تواند برای کاربران بازگشته خود انتخاب کند.

احراز هویت مجدد خودکار FedCM (به طور خلاصه، احراز هویت مجدد خودکار) کاربران را به طور خودکار (زمانی که RP ها انتخاب می کنند)، هنگامی که پس از احراز هویت اولیه با استفاده از FedCM برمی گردند، احراز هویت مجدد می کند. "تأیید هویت اولیه" در اینجا به این معنی است که کاربر با ضربه زدن روی دکمه "ادامه به عنوان..." در گفتگوی ورود به سیستم FedCM برای اولین بار در همان نمونه مرورگر، یک حساب ایجاد می کند یا به وب سایت RP وارد می شود.

گفتگویی که کاربر برای ایجاد حساب کاربری یا احراز هویت روی آن ضربه می زند.
گفتگویی که کاربر برای ایجاد حساب کاربری یا احراز هویت روی آن ضربه می زند.

RP می تواند با فراخوانی navigator.credentials.get() با autoReauthn: true درخواست reautn مجدد کند.

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 را در سطح جهانی یا برای RP غیرفعال نکرده است.
  • کاربر فقط از یک حساب FedCM برای ورود به وب سایت در این مرورگر استفاده کرده است.
  • کاربر با آن حساب وارد IdP شده است.
  • احراز هویت مجدد خودکار در 10 دقیقه گذشته انجام نشد.

هنگامی که شرایط فوق برآورده می شود، به محض فراخوانی FedCM navigator.credentials.get() تلاش برای احراز هویت مجدد خودکار کاربر شروع می شود.

کاربر در حال احراز هویت مجدد خودکار به یک RP با استفاده از FedCM است

آن را امتحان کنید

می‌توانید با روشن کردن پرچم Chrome chrome://flags#fedcm-auto-re-authn در Chrome 112 یا جدیدتر، احراز هویت خودکار FedCM را به صورت محلی امتحان کنید.

برای اهداف آزمایشی، می توانید با حذف داده های مرورگر، دوره 10 دقیقه سکوت را بازنشانی کنید.

  1. به chrome://history بروید.
  2. در کادر تاریخچه جستجو، مبدا RP را وارد کنید.
  3. روی نماد سه نقطه ⋮ کلیک کنید و Remove from history را انتخاب کنید.
  4. کروم را مجددا راه اندازی کنید.

در آزمایش مبدا شرکت کنید

همچنین می‌توانید با پیوستن به نسخه آزمایشی اصلی شخص ثالث که از Chrome 112 تا Chrome 114 در دسترس است، این ویژگی را در وب‌سایت خود فعال کنید.

آزمایش‌های مبدأ به شما امکان می‌دهد ویژگی‌های جدید را امتحان کنید و در مورد قابلیت استفاده، کاربردی بودن و کارایی آن‌ها به جامعه استانداردهای وب بازخورد بدهید. برای اطلاعات بیشتر، به راهنمای آزمایشی مبدا برای توسعه دهندگان وب مراجعه کنید. برای ثبت نام در این یا دیگر آزمایش اولیه، از صفحه ثبت نام دیدن کنید.

برای ثبت نام در نسخه آزمایشی شخص ثالث و فعال کردن ویژگی در شخص ثالث:

  1. به صفحه ثبت نام آزمایشی اصلی بروید.
  2. روی دکمه ثبت کلیک کنید و فرم درخواست توکن را پر کنید
  3. مبدا سرویس را به عنوان مبدا وب وارد کنید.
  4. تطبیق شخص ثالث را برای تزریق توکن با جاوا اسکریپت در منابع دیگر بررسی کنید.
  5. روی ارسال کلیک کنید.
  6. توکن صادر شده را در یک شخص ثالث جاسازی کنید.

برای جاسازی توکن در شخص ثالث، کد زیر را به کتابخانه جاوا اسکریپت یا 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 به اشتراک بگذارید.

عکس الکس پرز در Unsplash