شرکت در دوره آزمایشی منسوخ برای ذخیره‌سازی شخص ثالث پارتیشن نشده، Service Workers و Communication API

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

سایت‌هایی که برای اجرای پشتیبانی از پارتیشن‌بندی ذخیره‌سازی شخص ثالث وقت نداشته‌اند، می‌توانند در یک آزمایش منسوخ برای لغو موقت پارتیشن (ادامه انزوا با خط‌مشی مبدا یکسان، اما حذف جداسازی توسط سایت سطح بالا) شرکت کنند و رفتار قبلی فضای ذخیره‌سازی را بازیابی کنند. کارکنان خدمات و APIهای ارتباطی در محتوای تعبیه شده در سایت آنها.

علاوه بر یک دوره آزمایشی لغو پارتیشن بندی عمومی، می توان در یک آزمایش منسوخ متمرکز فقط برای window.sessionStorage شرکت کرد. این آزمایشی به دلیل نیاز به برخی سایت‌ها برای انتقال جریان Firebase signInWithRedirect در دسترس است. برای اطلاعات بیشتر در مورد این انتقال، به بهترین روش‌ها برای استفاده از signInWithRedirect در مرورگرهایی که دسترسی به حافظه شخص ثالث را مسدود می‌کنند، مراجعه کنید.

برای اینکه به توسعه‌دهندگان زمان بیشتری برای انطباق با اجرای جدید پارتیشن‌بندی فضای ذخیره‌سازی داده شود، آزمایش‌های منسوخ تا زمان انتشار Chrome 127، که برای 23 ژوئیه 2024 برنامه‌ریزی شده است، در دسترس خواهند بود. دوره آزمایشی منسوخ شدن برای کاربران نسخه‌های Chrome 111 تا 126 در سپتامبر منقضی می‌شود. 3، 2024.

آزمایش‌های استهلاک موجود

از Chrome 115، دو نسخه آزمایشی منسوخ در دسترس است:

  1. DisableThirdPartyStoragePartitioning : به یک سایت سطح بالا اجازه می دهد تا در محتوای شخص ثالث تعبیه شده در صفحات آن، پارتیشن بندی (به طور موقت جداسازی توسط سایت سطح بالا حذف شود) در ذخیره سازی، سرویس دهنده ها و API های ارتباطی انجام شود.
  2. DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning : به سایت اجازه می دهد تا sessionStorage در مسیرهای پیمایش جدا کند.

در زیر یک نمای کلی از آزمایش منسوخ شدن و آنچه که باید انتظار داشت آمده است. اگر بازخوردی برای به اشتراک گذاشتن دارید یا در طول این دوره آزمایشی با مشکلی مواجه شدید، در مخزن Github آزمایشی Deprecation Storage Partitioned به ما اطلاع دهید.

DisableThirdPartyStoragePartitioning

اگر سایت سطح بالا را در آزمایشی منسوخ شدن DisableThirdPartyStoragePartitioning ثبت کنید، APIهای زیر در زمینه های شخص ثالث بدون پارتیشن باقی می مانند: API های ذخیره سازی (مانند localStorage، sessionStorage، IndexedDB، Quota، و موارد دیگر)، API های ارتباطی BroadcastWorChannel و WebLocks)، و ServiceWorker API .

مثال:

نمودار پارتیشن بندی ذخیره سازی

برای توضیح بیشتر، توضیح پروژه را بررسی کنید.

DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning

اگر در آزمایشی منسوخ DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning ثبت نام کنید، پیمایش یک برگه به ​​مبدأ ثبت‌شده باعث می‌شود که همه iframe‌های بین‌سایتی با همان مبدا فقط برای Window.sessionStorage و فقط برای طول عمر آن برگه خاص بدون پارتیشن باقی بمانند. در حالی که آزمایش منسوخ DisableThirdPartyStoragePartitioning بر تمام زمینه های شخص ثالث تعبیه شده در مبدأ ثبت شده تأثیر می گذارد، آزمایش منسوخ DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning در عوض یک مبدأ معین را برای دریافت دسترسی های پارتیشن نشده در هنگام embparty ثبت می کند.

مثال:

نمودار پارتیشن بندی ذخیره سازی پس از تقسیم بندی کلی.

این برای توسعه دهندگان وب چه معنایی دارد؟

سایت‌ها باید استفاده از فضای ذخیره‌سازی نشده، سرویس‌دهنده و APIهای ارتباطی را در زمینه‌های شخص ثالث بررسی کنند و در صورت نیاز، قبل از منقضی شدن این آزمایش‌های منسوخ، برای پارتیشن‌بندی شخص ثالث آماده شوند. هدف این است که با انتشار کروم 127 در 3 سپتامبر 2024، این آزمایش‌های منسوخ شده به پایان برسد.

برای آموزش مرورگر به جداسازی فضای ذخیره‌سازی در محتوای شخص ثالث تعبیه‌شده در صفحات خود، سایت‌های سطح بالا باید برای یک یا هر دو آزمایش منسوخ ثبت نام کنند و نشانه(های) آزمایشی مربوطه را به سرصفحه‌های پاسخ HTTP خود اضافه کنند (نمونه مفصل را ببینید. زیر).

هر نسخه آزمایشی منسوخ در Windows، Mac، Linux، Chrome OS و Android در دسترس است.

در محاکمات استهلاک شرکت کنید

در زیر مروری مختصر از نحوه شرکت در یک یا هر دو آزمایش انحلال است. برای دستورالعمل‌های دقیق‌تر، به «شروع با آزمایش‌های مبدا» مراجعه کنید.

  1. Chrome نسخه 115 (یا جدیدتر) را راه اندازی کنید و مطمئن شوید که پرچم ThirdPartyStoragePartitioning فعال است.
  2. بررسی کنید که رفتار محتوای شخص ثالث تعبیه‌شده در سایت سطح بالای شما با پارتیشن‌بندی فضای ذخیره‌سازی شکسته شده است (اگر نه، پس نیازی به شرکت در آزمایش‌های Deprecation نیست).
  3. برای نسخه آزمایشی منسوخ ثبت نام کنید و با مراجعه به آدرس زیر یک توکن برای دامنه های خود دریافت کنید:
    1. برای یک سایت سطح بالا برای جداسازی فضای ذخیره‌سازی، سرویس‌دهی، و APIهای ارتباطی در محتوای تعبیه‌شده شخص ثالث: DisableThirdPartyStoragePartitioning
    2. برای یک سایت سطح بالا برای جدا کردن sessionStorage در مسیرهای پیمایش: DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning
  4. یک نشانه آزمایشی اصلی را به صفحه خود اضافه کنید:
    1. برای نسخه آزمایشی DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning ، می‌توانید یک Origin-Trial: <DEPRECATION TRIAL TOKEN> به سربرگ پاسخ HTTP سایت سطح بالای خود، که در آن <DEPRECATION TRIAL TOKEN> حاوی رمزی است که هنگام ثبت نام آزمایشی دریافت کرده‌اید. شما همچنین می توانید این کار را از طریق HTML انجام دهید برچسب زدن
    2. برای آزمایش DisableThirdPartyStoragePartitioning ، توکن باید از طریق یک تگ HTML <meta> تزریق شده از طریق جاوا اسکریپت داده شود. روش هدر HTTP پشتیبانی نمی شود.
  5. وب سایت خود را در Chrome 115 (یا جدیدتر) با ThirdPartyStoragePartitioning بارگیری کنید و بررسی کنید که مشکلات مربوط به پارتیشن بندی به درستی کاهش یافته است.
  6. برای توقف شرکت در دوره آزمایشی منسوخ، کافی است رمزی را که در مرحله ۲ اضافه کرده‌اید حذف کنید.

آزمایش منسوخ DisableThirdPartyStoragePartitioning از ویژگی آزمایش‌های اولیه شخص ثالث پشتیبانی می‌کند، اما اسکریپت شخص ثالثی که توکن را تزریق می‌کند، باید قبل از بارگیری iframe شخص ثالثی که پارتیشن‌بندی اعمال نمی‌شود، در قاب سطح بالا ارزیابی شود. نسخه آزمایشی منسوخ DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning از آزمایش‌های اصلی شخص ثالث پشتیبانی نمی‌کند، زیرا ثبت‌نام‌کننده باید در مقطعی از طول عمر برگه داده شده، سایت سطح بالا بوده باشد. راهنمای عیب‌یابی آزمایش‌های اولیه Chrome یک چک لیست کامل برای اطمینان از پیکربندی صحیح رمز شما ارائه می‌کند.

بازخورد را به اشتراک بگذارید

لطفاً هر گونه بازخورد یا مشکلی را که با آن مواجه می‌شوید به مخزن Github آزمایشی Deprecation Storage Partitioned ارسال کنید.