کوکیهای شخص ثالث کاربردهای زیادی دارند، اما آنها همچنین یک عامل کلیدی برای ردیابی بین سایتی هستند.
کوکیهای شخص ثالث ممکن است توسط محدودیتهای مرورگر، تنظیمات کاربر ، پرچمهای توسعهدهنده یا سیاستهای سازمانی مسدود شوند.
شما به سایت یا سرویسی نیاز دارید که تجربهای عالی را برای همه کاربرانتان فراهم کند، چه کوکیهای شخص ثالث در دسترس باشند و چه نباشند.
در این صفحه، اطلاعاتی در مورد راهکارهای حفظ حریم خصوصی برای سناریوهای تعبیهشده که بهطور سنتی به کوکیهای شخص ثالث متکی بودهاند، و راهکارهایی برای کمک به شما در انتخاب راهکاری که به بهترین وجه با نیازهای شما مطابقت دارد، خواهید یافت.
سرویسهای تعبیهشده یا جاسازیها شامل محتوای شخص ثالث (مانند ویدیوها، نقشهها)، اجزای تعاملی (مانند چت، سیستمهای نظردهی یا خدمات پرداخت)، سرویسهای ورود به سیستم و موارد دیگر میشوند.
بیشتر کار برای گذار از کوکیهای شخص ثالث باید توسط توسعهدهندگان تعبیهشده انجام شود، نه سایتهایی که میزبان تعبیهها هستند. این راهنما در درجه اول به بررسی راهحلهایی برای توسعهدهندگانی میپردازد که سرویسهای تعبیهشده ایجاد میکنند.
اگر سایت شما به یک جاسازی متکی است که از کوکیهای شخص ثالث استفاده میکند، حتماً مسیرهای مربوط به جاسازی خود را بررسی و آزمایش کنید و در صورت مشاهده هرگونه نقص، با ارائهدهندگان جاسازی تماس بگیرید.
سفرهای کاربری مرتبط با جاسازی خود را حسابرسی و آزمایش کنید
بهترین راه برای تعیین اینکه آیا جاسازیهای شما تحت تأثیر کوکیهای شخص ثالث قرار گرفتهاند یا خیر، آزمایش جریانهای کاربری جاسازی شخص ثالث با فعال کردن پرچم آزمایش کوکی شخص ثالث است.
پس از محدود کردن کوکیهای شخص ثالث، این سناریوهای رایج جاسازی را آزمایش کنید:
- ابزارکهای چت: آیا میتوانید یک جلسه چت را شروع کنید؟ آیا میتوانید صفحه را بدون از دست دادن جلسه خود رفرش کنید؟ آیا میتوانید به صفحات دیگر بروید و جلسه خود را حفظ کنید؟
- جاسازی محتوا: آیا میتوانید محتوای ویدیویی یا سایر محتوای جاسازیشده را مشاهده کنید؟ آیا تنظیمات برگزیده کاربر، مانند زبان یا زیرنویس، حفظ میشود؟ آیا در زمان مورد انتظار تبلیغات را میبینید، مثلاً به عنوان مشترک ویژه آنها را نمیبینید؟
- ورود به سیستم: آیا ورودها - از جمله هرگونه ورود به سیستم یکپارچه (SSO) - برای جاسازیهایی که از آنها پشتیبانی میکنند، کار میکنند؟ آیا آنها در بارگیری مجدد صفحه و پیمایش به صفحاتی که از همان جاسازیها استفاده میکنند، همچنان پابرجا هستند؟
- ابزارکهای نظردهی: آیا میتوانید نظرات را بگذارید، لایک کنید و به آنها رأی مثبت بدهید؟
- راهکارهای پرداخت درونسیستمی: آیا میتوانید پرداختها را با موفقیت انجام دهید؟
در بخشهای بعدی، اطلاعات دقیقتری در مورد چگونگی تأثیرپذیری این جریانها خواهید یافت.
موارد استفاده رایج
تعدادی API وجود دارد که میتوانند برای جاسازیهایی که به طور سنتی به کوکیهای شخص ثالث متکی بودهاند، استفاده شوند. جدول زیر برخی از گردشهای کاری رایج و APIهای توصیهشده برای استفاده به عنوان خلاصه سطح بالا را فهرست میکند. بخشهای بعدی دلیل این توصیهها را توضیح میدهند.
| مورد استفاده | API پیشنهادی برای استفاده از کوکیهای شخص ثالث |
|---|---|
| ویجت چت | چیپس |
| جاسازی نقشه | چیپس |
| دامنههای سندباکس برای محتوای کاربر غیرقابل اعتماد (مانند googleusercontent.com و githubusercontent.com) که نیاز به محدودهبندی وضعیت برای هر ناشر دارند | چیپس |
| تبلیغات جاسازیشده که نیاز به محدودهبندی وضعیت برای هر ناشر دارند | چیپس |
| ورود از طریق ارائه دهنده هویت | FedCM |
| میزبانی شده در منابع مختلف، اما مرتبط. | API دسترسی به فضای ذخیرهسازی با مجموعههای وبسایت مرتبط |
| جاسازی محتوا با تنظیمات مبتنی بر ورود (مانند محتوای ویدیویی بدون تبلیغات، یا تنظیمات زبان/زیرنویس) | API دسترسی به فضای ذخیرهسازی |
| ابزارک نظردهی شبکههای اجتماعی که نیاز به ورود دارد | API دسترسی به فضای ذخیرهسازی |
API مناسب را برای موارد استفاده شخص ثالث تعبیه شده انتخاب کنید
این بخش به نحوه انتخاب یک API جایگزین مناسب میپردازد و APIهای پیشنهادی را توضیح میدهد.
فلوچارت زیر به انتخاب از بین گزینههای موجود کمک میکند:

این نمودار جریان سه سوال اصلی را مطرح میکند و ما به جزئیات بیشتر آنها و اینکه چرا در هر مورد یک API خاص توصیه میشود، خواهیم پرداخت.
۱. آیا کوکیها مختص سایت جاسازی هستند؟
بسیاری از جاسازیهای شخص ثالث به طور مستقل در سایتهای کاملاً نامرتبط استفاده میشوند. به عنوان مثال، ویجتهای چت برای پشتیبانی مشتری اغلب برای کار به کوکیها نیاز دارند، اما نیازی به اشتراکگذاری این کوکیها بین دو سازمان کاملاً متفاوت که اتفاقاً هر دو از یک راهحل ویجت چت استفاده میکنند، ندارند. در واقع، ترجیح این است که در بسیاری از این موارد حتی اجازه اشتراکگذاری کوکیها داده نشود.
اگر سرویس جاسازی شخص ثالث را به سایتهای دیگر ارائه میدهید و این سرویس به کوکیها متکی است، بررسی کنید که آیا این کوکیها مختص سرویسی هستند که در آن جاسازی شده است یا خیر. آیا تا به حال توسط نمونههای جاسازی شما در سایتهای دیگر به اشتراک گذاشته شدهاند؟
اگر نیازی به اشتراکگذاری کوکیها نباشد، پارتیشنبندی کوکیها با استفاده از CHIPS سادهترین گزینه است. این API کوکیهای شخص ثالث را به سایت سطح بالا متصل میکند، نه اینکه به آنها اجازه دهد توسط همه سایتهایی که از یک جاسازی شخص ثالث استفاده میکنند، به اشتراک گذاشته شوند. پیادهسازی CHIPS ساده است زیرا فقط نیاز به اضافه کردن یک ویژگی Partitioned اضافی به کوکیهای موجود دارد. این به سرویسهای جاسازیشده اجازه میدهد تا همچنان وضعیت را ذخیره کنند، اما فضای ذخیرهسازی مشترک بین سایتی را که امکان ردیابی بین سایتی را فراهم میکند، حذف میکند.
سایتها همچنین باید بررسی کنند که آیا کوکیها به دلایل درستی استفاده میشوند یا خیر. کوکیها فقط باید زمانی استفاده شوند که تنظیم شده باشند یا نیاز به ارسال آنها با درخواستهای HTTP باشد. اگر این مورد وجود ندارد و کوکیها فقط به عنوان یک گزینه ذخیرهسازی مناسب استفاده میشوند، باید APIهای ذخیرهسازی مختلف در نظر گرفته شوند. این کار باعث میشود دادهها در زمانی که نیازی به ارسال آنها نیست، محلی باقی بمانند. APIهای ذخیرهسازی در تمام مرورگرهای اصلی، به روشی مشابه با CHIPS که کوکیها را پارتیشنبندی میکند، از قبل پارتیشنبندی شدهاند .
۲. آیا کوکیها برای یک ارائهدهنده هویت شخص ثالث هستند؟
یکی از کاربردهای رایج کوکیهای شخص ثالث در جاسازیها، ارائه قابلیتهای ورود به سیستم است که توسط یک ارائهدهنده ورود شخص ثالث، مانند ورود با حساب گوگل، مدیریت میشود. کوکیهای پارتیشنبندیشده در این مورد گزینه مناسبی نیستند.
مدیریت اعتبارنامه فدرال (FedCM) یک API اختصاصی مخصوص این مورد استفاده است و بدون کوکیهای شخص ثالث کار میکند. اگر FedCM توسط ارائهدهنده هویت پشتیبانی شود، ممکن است نیاز به کوکیهای شخص ثالث از بین برود.
میتوانید اطلاعات بیشتر در مورد پرداختن به تأثیرات کوکیهای شخص ثالث بر گردشهای کاری ورود به سیستم را در راهنمای هویت مطالعه کنید.
۳. آیا کوکیها در تعداد کمی از سایتهای مرتبط استفاده میشوند؟
اگر هیچ یک از گزینههای قبلی جایگزین مناسبی برای کوکیها نیستند، باید به دنبال فعال کردن مجدد دسترسی کوکیهای شخص ثالث برای جاسازی باشید. این قابلیت را میتوان در موارد استفاده خاص و کنترلشده با API دسترسی به ذخیرهسازی فعال کرد. این API دسترسی کامل به کوکیهای شخص ثالث را (با رعایت کنترلها) دوباره فعال میکند، بنابراین قدرتمندترین گزینه است. به همین دلیل توصیه میشود در صورت وجود یک جایگزین محدودتر، از آن اجتناب کنید.
برای استفاده از API دسترسی به فضای ذخیرهسازی، چند الزام وجود دارد:
- کاربر باید قبلاً از سایت جاسازیشده در سطح بالا بازدید کرده باشد. برای مثال، اگر یک سیستم نظردهی جاسازی شده باشد، کاربر باید از سایت آن سیستم نظردهی نیز بازدید کند.
- کاربر قبل از اینکه کوکیها بتوانند به اشتراک گذاشته شوند، باید با محتوای جاسازیشده تعامل داشته باشد . این بدان معناست که ممکن است بارگذاری کامل محتوای جاسازیشده قبل از تعامل کاربر امکانپذیر نباشد.
- ممکن است کاربر نیاز داشته باشد اشتراکگذاری کوکیها را با یک پنجره بازشو در مرورگر تأیید کند، بهویژه در وهله اول و پس از آن بهصورت دورهای.
- همچنین ممکن است سایت جاسازی نیاز به تنظیم ویژگیهای جعبه شنی اضافی داشته باشد.
این محدودیتها تضمین میکنند که عمل قدرتمند فعالسازی مجدد کوکیهای شخص ثالث فقط زمانی انجام میشود که کاربر و سایت انتظار آن را داشته باشند. با این حال، در سناریوهای خاص، ممکن است از اقدامات کاربر صرف نظر شود. به عنوان مثال، اگر کاربر اخیراً دسترسی را تأیید کرده باشد، ممکن است برای مدتی (مطابق تعریف مرورگر) نیازی به درخواست مجدد آنها نباشد.
یکی دیگر از سناریوهایی که احتمالاً کاربر انتظار آن را دارد، سایتهای مرتبط است. به عنوان مثال، برخی سازمانها از چندین منبع مختلف استفاده میکنند که توسط مرورگر به عنوان cross-site در نظر گرفته میشوند و بنابراین استفاده از کوکی در آنها به عنوان شخص ثالث در نظر گرفته میشود. به عنوان مثال میتوان به برندهایی با سایتهای مختص به یک کشور (مانند example.com و example.co.uk ) یا وبسایتهای مختص به یک برند (مانند example.car و example.house ) اشاره کرد.
در این حالت، که تعداد کمی وبسایت مرتبط وجود دارد، میتوانید از مجموعه وبسایتهای مرتبط استفاده کنید. سایتها به کروم ارسال میشوند تا کروم بداند که آنها مرتبط هستند. این امر امکان دسترسی به API دسترسی به ذخیرهسازی را به روشی کاربرپسندتر و با پیامهای کاربری کمتر فراهم میکند.
برای وبسایتهای غیرمرتبط که در واقع شخص ثالث هستند و در مواردی که دسترسی کامل به کوکیهای شخص ثالث به دلیل کافی نبودن APIهای جایگزین مورد نیاز است، استفاده از API دسترسی به فضای ذخیرهسازی منوط به رعایت الزامات و دستورالعملهای کامل خواهد بود.
مقایسه API های مختلف
هر یک از این راهکارها ویژگیها و محدودیتهای کمی متفاوتی دارند که آنها را برای موارد استفاده خاص، انتخاب بهتری میکند. جدول زیر تفاوتهای اصلی را خلاصه میکند:
| چیپس | فضای ذخیرهسازی پارتیشنبندیشده | FedCM | API دسترسی به فضای ذخیرهسازی با مجموعههای وبسایت مرتبط | API دسترسی به فضای ذخیرهسازی | |
|---|---|---|---|---|---|
| کاربر نیازی ندارد که قبلاً به سایت جاسازیشده به عنوان یک سایت سطح بالا دسترسی داشته باشد. | |||||
| نیازی به تایید دسترسی توسط کاربر ندارد | |||||
| نیازی به تعامل کاربر با جاسازی ندارد | (این موضوع میتواند در مورد سایتهای جاسازیشده با دسترسی سطح بالا نیز صادق باشد.) | ||||
| تلاش برای پیادهسازی | خیلی پایین | کم | بالا | متوسط | متوسط |
| میتواند برای اشتراکگذاری کوکیها در چندین سایت/مبدا سطح بالا استفاده شود | ( پیشنهاد در حال بررسی است. ) | ||||
| قابل استفاده در مرورگرهای غیر کرومیوم | (به API دسترسی به فضای ذخیرهسازی برمیگردد.) |
پشتیبانی از موارد استفاده در مرورگرهای مختلف
سازگاری مرورگر یکی از عوامل اصلی هنگام تصمیمگیری در مورد یک راهحل است، همانطور که در آخرین سطر جدول به آن اشاره شده است. برخی از APIها (CHIPS، FedCM، مجموعههای وبسایت مرتبط) فقط در مرورگرهای Chromium در دسترس هستند. در حال حاضر تنها دو راهحل چند مرورگره وجود دارد: APIهای ذخیرهسازی پارتیشنبندیشده (زمانی که کوکیها مورد نیاز نیستند) و API دسترسی به ذخیرهسازی (زمانی که کوکیها مورد نیاز هستند).
با این حال، همانطور که قبلاً اشاره شد ، API دسترسی به فضای ذخیرهسازی دارای تعدادی محدودیت است که میتواند بر تجربه کاربر در وبسایت شما تأثیر بگذارد. تیم کروم روی اضافه کردن APIهای دیگر کار کرده است که برای برآورده کردن موارد استفاده خاص طراحی شدهاند و تجربهای مشابه آنچه با کوکیهای شخص ثالث امکانپذیر بوده است را ارائه میدهند. بنابراین توصیه میشود بهترین گزینهها را در نظر بگیرید و آنها را به عنوان پیشرفتهای مترقی در نظر بگیرید، و برای مرورگرهایی که از API دسترسی به فضای ذخیرهسازی پشتیبانی نمیکنند، از آن استفاده کنید.
از آنجایی که کوکیها میتوانند به دلایل مختلفی مسدود شوند (مثلاً تنظیمات مرورگر، افزونهها)، تشخیص ویژگی پشتیبانی از API ممکن است کافی نباشد. در عوض، بهتر است آزمایش کنید که آیا کوکیهای مورد انتظار وجود دارند یا خیر، و اگر وجود نداشتند، به گردش کار Storage Access API مراجعه کنید تا درخواست دسترسی به کوکیهای شخص ثالث را بدهید.
همین حالا اقدام کنید!
اگر افزونه شخص ثالث شما دیگر بدون استفاده از کوکیهای شخص ثالث کار نمیکند، راهحلهای متعددی وجود دارد که تأثیر احتمالی را همانطور که در این گفتگو به تفصیل شرح داده شده است، برطرف میکند. اکنون زمان حسابرسی سرویس شما برای کوکیهای شخص ثالث است!
برای کسانی که اکنون با توجه به آزمایش حذف کوکیهای شخص ثالث توسط کروم ، با مشکلاتی در جاسازیهای خود مواجه هستند، تعدادی گزینه کوتاهمدت برای کمک در حین مهاجرت به گزینههای جایگزین که در این پست توضیح داده شده است، وجود دارد. برای اطلاعات بیشتر به مستندات حفظ تجربیات حیاتی کاربر مراجعه کنید.