پس از یک آزمایش موفقیتآمیز در مبدا ، کروم ۱۳۱ اکنون از FedCM به عنوان یک سیگنال اعتماد برای رابط برنامهنویسی کاربردی دسترسی به حافظه (Storage Access API) استفاده میکند.
رابط برنامهنویسی کاربردی دسترسی به فضای ذخیرهسازی (SAA) به iframeهای بینمنبعی این امکان را میدهد که در صورت عدم دسترسی توسط تنظیمات مرورگر، درخواست مجوز دسترسی به فضای ذخیرهسازی را داشته باشند.
برخی وبسایتها ممکن است هم از FedCM برای احراز هویت و هم از SAA برای دسترسی iframeهای cross-origin به فضای ذخیرهسازی مورد نیاز استفاده کنند. برای مثال، اگر idp.example در rp.example تعبیه شده باشد، و idp.example برای نمایش محتوای شخصیسازیشده به دسترسی به فضای ذخیرهسازی کوکی سطح بالای خود نیاز داشته باشد.
در این سناریو، کاربر باید دو درخواست مختلف را تأیید کند: یکی برای احراز هویت و دیگری برای اعطای دسترسی به کوکی، زیرا SAA یک درخواست مجوز را فعال میکند. FedCM با عمل به عنوان یک سیگنال اعتماد ، فرآیند API دسترسی به حافظه را ساده میکند. به محض اینکه کاربر با FedCM وارد سیستم شود، درخواستهای دسترسی به حافظه که توسط IdP آغاز شدهاند، به طور خودکار اعطا میشوند و نیاز به درخواستهای اضافی SAA را از بین میبرند.
// In top-level rp.example:
// Ensure FedCM permission has been granted.
const cred = await navigator.credentials.get({
identity: {
providers: [{
configURL: 'https://idp.example/fedcm.json',
clientId: '123',
}],
}
});
// In an embedded IdP iframe:
// Returns `true` if the user already has access to cookies, and `false` if
// the user doesn't have access yet and needs to request it.
const hasAccess = await document.hasStorageAccess()
if(!hasAccess){
// No user gesture is needed to approve storage access, and the call will be auto-granted.
document.requestStorageAccess().then(e=>{
//access cookies
})
} else{
//the iframe already has access to third-party cookies
}
شرکتکنندگان در آزمایش Origin بازخورد مثبتی ارائه دادهاند و بر بهبود تجربه کاربری ناشی از اعلان FedCM مختص به هر زمینه نسبت به اعلانهای عمومی API دسترسی به ذخیرهسازی تأکید کردهاند.
برای کسب اطلاعات بیشتر در مورد استفاده از FedCM برای اعطای خودکار دسترسی به فضای ذخیرهسازی، به مستندات API دسترسی به فضای ذخیرهسازی مراجعه کنید.
مشارکت کنید و بازخورد ارائه دهید
برای به اشتراک گذاشتن بازخورد یا گزارش مشکلات، یک مشکل ثبت کنید. ما راهنمای توسعهدهنده FedCM و همچنین صفحه گزارشهای بهروزرسانی انباشتهشده را بهروز نگه خواهیم داشت.