سیاست کوکی و ذخیرهسازی در مرورگر
این سند درباره چیست
بیشتر سیاستهای کوکی از روی هم نوشته شدهاند و درباره محصولی که توصیف میکنند غلطاند. این سند میگوید سگمنتیک دقیقاً چه چیزی در مرورگر مینویسد، کجا مینویسد، و آن چیز تا کی میماند.
مهمترین واقعیت را اول میگوییم. کیت توسعه وب سگمنتیک هیچ کوکیای نمینویسد، حتی یکی. هرچه لازم دارد در حافظه محلی مرورگر (`localStorage`) روی همان دامنهای مینویسد که اسکریپت روی آن سوار است، بهعلاوه یک ورودی در حافظه کش مرورگر (`Cache Storage`) برای پوش وب.
تنها کوکیهای واقعی مال پنل خود سگمنتیکاند: کوکی نشست ورود و کوکی زبان. کسی که وارد پنل نمیشود، هیچ کوکیای از ما نمیگیرد.
عنوان این سند به همین دلیل «ذخیرهسازی در مرورگر» است و نه فقط «کوکی». عنوانی که فقط کوکی بگوید، درباره چیزی حرف میزند که وجود ندارد و درباره چیزی که وجود دارد ساکت میماند.
ماده ۱هرچه در مرورگر نوشته میشود
این فهرست کامل است. اگر کلیدی در مرورگر دیدید که اینجا نیست، مال ما نیست.
| نام | کجا | برای چه | تا کی |
|---|---|---|---|
| `segmentic_anonymous_id` | حافظه محلی، دامنه مشتری | شناسه تصادفی بازدیدکننده ناشناس، تا رویدادهای یک نفر به هم بچسبند | بدون انقضا. با پاک کردن داده سایت، یا با خروج از حساب، عوض میشود |
| `segmentic_user_id` | حافظه محلی، دامنه مشتری | شناسهای که خود مشتری برای کاربر شناختهشده میدهد | تا خروج از حساب |
| `segmentic_session` | حافظه محلی، دامنه مشتری | شناسه نشست، برای طول بازدید و پنجره قیف | با ۳۰ دقیقه بیکاری تازه میشود |
| `segmentic_queue` | حافظه محلی، دامنه مشتری | رویدادهایی که هنوز نرفتهاند، تا بستن تب داده را نبرد | تا ارسال موفق |
| `segmentic_campaign` | حافظه محلی، دامنه مشتری | آخرین پیامی که بازدید از آن آمده، برای انتساب خرید | ۷ روز |
| `segmentic_traits` | حافظه محلی، دامنه مشتری | صفتهای آخرین `identify`، برای هدفگیری نمایش داخل سایت | تا خروج از حساب |
| `segmentic_opt_out` | حافظه محلی، دامنه مشتری | نشانه انصراف بازدیدکننده از جمعآوری | تا وقتی خودش برش گرداند. با خروج از حساب پاک نمیشود |
| `segmentic_seen` | حافظه محلی، دامنه مشتری | اینکه این مرورگر قبلاً اینجا بوده، برای تفکیک بازدیدکننده تازه از بازگشتی | بدون انقضا. عمداً با خروج از حساب پاک نمیشود |
| `segmentic-config` | Cache Storage، دامنه مشتری | تنظیمی که سرویسورکر پوش میخواند: نشانی سرویس، کلید نوشتن عمومی، کلید عمومی پوش، شناسه کاربر | تا لغو اشتراک پوش یا پاک کردن داده سایت |
| `__Host-segmentic_session` | کوکی، دامنه پنل سگمنتیک | نشست ورود کاربر پنل. با نشانههای HttpOnly و Secure و SameSite از نوع Lax | تا خروج یا پایان اعتبار نشست |
| `NEXT_LOCALE` | کوکی، دامنه پنل سگمنتیک | زبانی که کاربر پنل انتخاب کرده است | تا وقتی کاربر عوضش کند |
| `app_mode` و `app_palette` و `app_paradigm` | حافظه محلی، دامنه پنل سگمنتیک | تم و رنگ و چیدمانی که کاربر پنل انتخاب کرده است | تا پاک کردن داده سایت |
تبصره ۱: کلید نوشتن که در `segmentic-config` نگه داشته میشود از ابتدا عمومی است و در خود تگ اسکریپت صفحه دیده میشود، پس ذخیرهاش چیزی را افشا نمیکند. هیچ راز دیگری در مرورگر نوشته نمیشود.
تبصره ۲: روی نصب بدون HTTPS، نام کوکی نشست بدون پیشوند و به شکل `segmentic_session` است. پیشوند `__Host-` تنها روی HTTPS معنا دارد.
ماده ۲چرا کیت هیچ کوکیای نمینویسد
کوکی با هر درخواست به آن دامنه همراه میرود، چه لازم باشد چه نباشد، و میشود آن را به دامنه بالادست بست تا زیردامنهها هم ببینندش. حافظه محلی هیچکدام را ندارد: به یک مبدأ بسته است، خودکار جایی فرستاده نمیشود، و فقط اسکریپت همان صفحه میخواندش.
یک ابزار اندازهگیری که حرفی برای گفتن در هر درخواست ندارد، از کوکی فقط هزینه میگیرد. پس کوکی ننوشتن اینجا تصمیم فنی است، نه ژست حریم خصوصی.
نتیجهای که برای بازدیدکننده مهمتر است: هیچ کوکی شخص ثالثی در کار نیست. کلیدها روی دامنه خود مشتری نوشته میشوند و مرورگر اجازه نمیدهد سایت دیگری بخواندشان. کسی که به دو سایت مشتری ما سر بزند دو شناسه ناشناس بیربط میگیرد. داده هر مشتری در حساب خودش میماند و پروفایل بینمشتری ساخته نمیشود.
ماده ۳انقضا، آنطور که واقعاً هست
کوکی تاریخ انقضا دارد و مرورگر خودش اجرایش میکند. حافظه محلی چنین چیزی ندارد. هر مقداری که آنجا نوشته شود تا وقتی کسی پاکش نکند میماند، حتی سالها.
سه عمر واقعی در کار است و هر سه در سطح برنامه اجرا میشوند:
- **چرخش نشست با بیکاری.** شناسه نشست بعد از ۳۰ دقیقه بیکاری تازه میشود، نه با هر بار باز شدن صفحه. کسی که ده دقیقه مطلبی را میخواند و بعد کلیک میکند، در یک نشست میماند.
- **پنجره انتساب کمپین، ۷ روز.** بعد از آن، بازدید دیگر به پیامی که او را آورده نسبت داده نمیشود. همین عدد سمت سرور هم هست و دو عدد متفاوت یعنی گزارشهایی که با هم نمیخوانند.
- **خروج از حساب.** شناسه کاربر و نشست و انتساب کمپین پاک میشوند و شناسه ناشناس تازه ساخته میشود. دلیلش کامپیوتر مشترک است: خرید نفر بعد نباید به پیامی که نفر قبل گرفته بخورد.
تبصره ۳: کلید `segmentic_seen` تنها چیزی است که از خروج جان سالم میبرد. خروج از حساب کسی را بازدیدکننده تازه نمیکند و پاک کردن این نشانه، آمار «تازه در برابر بازگشتی» را غلط میکند. اینجا میگوییمش تا کسی بعداً کشفش نکند.
تبصره ۴: اگر حافظه محلی در دسترس نباشد (حالت ناشناس سافاری، مرورگر سازمانی سختگیر، یا پر شدن سهمیه)، کیت به حافظه موقت میافتد و هیچکدام از این کلیدها از بستن تب جان به در نمیبرند.
ماده ۴چیزی که در مرورگر نیست ولی سرور نگه میدارد
یک سند ذخیرهسازی مرورگر که فقط از مرورگر بگوید گمراهکننده است. پس این هم:
- نشانی IP خام روی هر رویداد ذخیره میشود.
- عامل کاربر (User-Agent) خام روی رویداد ذخیره **نمیشود**. از آن سه ستون مرورگر و سیستمعامل و نوع دستگاه ساخته میشود و متن خامش دور ریخته میشود.
- استثنای همین قاعده: روی اشتراک پوش وب، عامل کاربر خام نگه داشته میشود، چون بدون آن معلوم نیست یک اشتراک مال کدام مرورگر است.
- همه این دادهها داخل ایران ذخیره میشوند.
درباره مدت نگهداری عدد پیشفرضی اعلام نمیکنیم، چون نداریم. نگهداری در سامانه پیشفرض صفر دارد و صفر یعنی «نگه دار تا وقتی مشتری تعیین کند». هر مشتری مدت نگهداری و حذف را برای حساب خودش تنظیم میکند و هر دو ساخته شدهاند.
ماده ۵نوار رضایت کوکی نداریم، و چرا
هیچ مقرره منتشرشده ایرانی پیدا نشد که مانند مقررات اروپایی برای نوشتن کوکی یا خواندن حافظه مرورگر رضایت جداگانه بخواهد. دستورالعمل اجرایی بهبود حفاظت از حریم خصوصی کاربران مصوب ۱۴۰۲ شفافیت و رضایت صریح میخواهد، ولی متنش درباره جمعآوری و پردازش و نگهداری اطلاعات کاربر است و به سازوکار فنی ذخیره در مرورگر نپرداخته است. اینکه این دستورالعمل بر سرویسی مثل ما که با کاربر نهایی طرف مستقیم نیست چطور اعمال میشود، هنوز روشن نیست و به نظر مشاور حقوقی نیاز دارد.
پس موضع ما این است: جای درست رضایت همانجاست که مشتری با کاربر خودش طرف است، یعنی ثبتنام و سیاست حریم خصوصی خود مشتری. سگمنتیک نواری روی سایت مشتری تزریق نمیکند، چون سایت مال ما نیست.
این یک تصمیم محصولی است و ادعای حقوقی نیست. اگر قاعدهای در این باره تصویب شود، هم رفتار محصول و هم این سند عوض میشوند.
ماده ۶بازدیدکننده چطور جلوی این را میگیرد
چهار راه، هر چهار تا واقعی:
- **پاک کردن داده سایت.** در تنظیمات مرورگر، همه کلیدهای بالا با هم میروند. دفعه بعد شناسه ناشناس تازه ساخته میشود، یعنی رفتار قبلی به بازدید جدید وصل نمیشود.
- **نشانه Do Not Track.** اگر مرورگر آن را بفرستد، کیت بهطور پیشفرض هیچ رویدادی جمع نمیکند. این پیشفرض را مشتری میتواند در تنظیم کیت خاموش کند و آنوقت مسئولیتش با اوست. همین را هم میگوییم تا سند کامل باشد.
- **انصراف از داخل سایت مشتری.** فراخوان `optOut` جمعآوری را قطع میکند و صفی را که هنوز نرفته دور میریزد، نه اینکه فقط جلوی آینده را بگیرد. انصرافی که دادههای جمعشده را بیسروصدا تحویل بدهد، انصراف نیست.
- **بستن حافظه محلی در مرورگر.** کیت به حافظه موقت میافتد و با بستن تب همهچیز میرود. سایت مشتری هم از کار نمیافتد، چون هر دسترسی به حافظه محافظتشده است.
انصراف از دریافت پیام مسئله جداگانهای است و مرکز ترجیحات و لغو اشتراک برایش ساخته شده است.
ماده ۷این اسکریپت روی سایت مشتری مینشیند
کیت روی دامنه خود مشتری اجرا میشود، با کلید نوشتن خود مشتری، و مشتری تصمیم میگیرد کدام صفحهها آن را داشته باشند. سه نتیجه دارد:
- اطلاعرسانی به بازدیدکننده تکلیف مشتری است. سیاست حریم خصوصی مشتری باید همین جدول یا معادلش را داشته باشد و مشتری میتواند سطرهای آن را عیناً بردارد.
- سگمنتیک با بازدیدکننده رابطه مستقیم ندارد و از او چیزی جز آنچه مشتری فرستاده نمیداند.
- درخواست دسترسی یا حذف از سمت بازدیدکننده اول به مشتری میرود. اگر مستقیم به ما برسد، به مشتری ارجاعش میدهیم و بدون دستور او روی داده او دست نمیبریم.
تبصره ۵: حذف در سطح هر مشتری ساخته شده و منتظر تصمیم فنی تازهای نیست. وقتی مشتری دستور حذف بدهد، اجرا میشود.
ماده ۸تغییر این سند
تغییر این سند دست کم ۶۰ روز پیش از اجرایی شدن اطلاع داده میشود. اگر تغییر، کلیدی به جدول اضافه کند یا عمر یکی از کلیدها را بلندتر کند، همانجا نوشته میشود که چه چیزی عوض شده است.
جدول بالا از روی خود کیت نوشته شده است و این سند تا وقتی ارزش دارد که با کد یکی باشد.
تماس
پرسش یا درخواست درباره داده: privacy@segmentic.net
پشتیبانی: support@segmentic.net
کارگستران نسل جوان باختر https://segmentic.net