Разрешите неограниченный доступ для записи в межсайтовое хранилище с доступом для чтения с сохранением конфиденциальности.
Статус реализации
В этом документе изложено предложение по неразделенному межсайтовому хранилищу: API общего хранилища.
- The Shared Storage API has now moved to general availability.
- A live demo is available, as is testing:
- URL selection output gate is available for local testing from Chrome M105+.
- Private Aggregation output gate is available for local testing from Chrome M107+.
- Measurement with the Private Aggregation API is now in general availability.
- Chrome platform status
Proposal | Status |
---|---|
Event-level reporting for Content Selection (selectURL() ) |
Available until at least 2026 |
Per-site budgeting Explainer |
Available in M119 |
Allow writing from response headers Explainer GitHub Issue |
Available in M124. Can be manually enabled in M119-M123 |
Debugging Shared Storage worklets with DevTools Section |
Available in M120 |
Update Shared Storage data storage limit to 5MB Explainer |
Available in M124 |
createWorklet() to create cross-origin worklets without an iframe |
Available in M125 |
Allow cross-origin script in addModule() , and align createWorklet() to match the behavior |
Available in M130 |
Зачем нам нужен этот API?
Чтобы предотвратить межсайтовое отслеживание пользователей, браузеры разделяют все формы хранения (файлы cookie, localStorage, кеши и т. д.). Однако существует ряд законных вариантов использования, которые полагаются на неразделенное хранилище, что было бы невозможно без помощи новых веб-API. Например, производитель контента может захотеть измерить охват на разных сайтах, не полагаясь на межсайтовые идентификаторы.
API общего хранилища позволяет сайтам хранить и получать доступ к неразделенным межсайтовым данным. Эти данные должны быть прочитаны в безопасной среде, чтобы предотвратить утечку.
Вы можете использовать данные общего хранилища двумя способами:
- Межсайтовый выбор контента .
- Шумная агрегация межсайтовых данных с помощью Private Aggregation API.
Для кого это?
Существует множество различных компаний, которые могут получить выгоду от использования API общего хранилища. Например:
- Рекламные технологии могут измерять охват кампании, устанавливать ограничения частоты показов и чередовать креативы, и все это в настоящее время зависит от сторонних файлов cookie.
- Поставщики платежных услуг могут определить, является ли пользователь существующим клиентом, и адаптировать процесс оформления заказа.
- Компании, занимающиеся веб-безопасностью, могут создавать собственную логику для выявления подозрительного или опасного поведения.
Ваша компания ищет решения для межсайтового хранения данных, которые еще не реализованы? Поделитесь своим вариантом использования .
Варианты использования
API общего хранилища предназначен для поддержки многих вариантов использования, заменяя некоторые существующие варианты использования сторонних файлов cookie. Это включает в себя:
Вариант использования | Описание | Выходной вентиль |
---|---|---|
Ротация рекламных объявлений | Вы можете хранить такие данные, как идентификатор объявления, количество просмотров и взаимодействие с пользователем, чтобы определять, какое объявление пользователи видят на разных сайтах. Это позволяет сбалансировать просмотры и избежать перенасыщения определенным контентом, что поможет избежать негативного пользовательского опыта. | выбор URL |
Запустите A/B-тестирование | Вы можете назначить пользователя в экспериментальную группу, а затем сохранить эту группу в общем хранилище для доступа к ней между сайтами. | выбор URL |
Настройте пользовательский интерфейс для известных клиентов | Вы можете делиться персонализированным контентом и призывами к действию на основе статуса регистрации пользователя или других состояний пользователя. | выбор URL |
Меры по предотвращению злоупотреблений | Организации по борьбе со злоупотреблениями, мошенничеством и веб-безопасностью часто используют собственные методы для обнаружения злоумышленников, будь то автоматизированные боты или реальные люди, пытающиеся причинить вред. Здесь можно протестировать множество различных стратегий, будь то использование выходного шлюза выбора URL-адреса для кодирования рейтинга надежности пользователя или использование выходного шлюза частного агрегирования для создания наборов данных для обнаружения аномалий. | Выбор URL-адреса, API частного агрегирования |
Измеряйте уникальный охват | Многие производители контента и рекламодатели часто хотят знать, сколько уникальных людей просмотрело их контент. Вы можете использовать общее хранилище, чтобы сообщать о том, когда пользователь впервые увидел вашу рекламу, встроенное видео, публикацию, а также предотвращать дублирующий учет одного и того же пользователя на другом сайте, предоставляя вам агрегированный зашумленный отчет о вашем приблизительном уникальном охвате. | API частного агрегирования |
Измерьте демографические данные пользователей | Производители контента часто хотят понять демографические данные своей аудитории. Вы можете использовать общее хранилище для записи демографических данных пользователей в контексте, в котором они у вас есть, например на вашем сайте 1P, и использовать агрегированные отчеты для составления отчетов по ним на многих других сайтах, таких как встроенный контент. | API частного агрегирования |
Измерьте охват частоты K+ | Иногда описываемый как «эффективная частота», часто существует минимальное количество просмотров, прежде чем пользователь узнает или вспомнит определенный контент (часто в контексте просмотров рекламы). Вы можете использовать общее хранилище для создания отчетов об уникальных пользователях, которые просмотрели часть контента не менее K раз. | API частного агрегирования |
Предложение направлено на создание API общего назначения, который поддерживает множество возможных вариантов использования в будущем. Это позволяет проводить дальнейшие эксперименты и изменения, расти вместе с веб-экосистемой.
Как работает общее хранилище?
Общее хранилище позволяет вам принимать обоснованные решения на основе межсайтовых данных, не передавая информацию о пользователе (например, историю браузера или другие личные данные) на встраиваемый сайт или не передавая данные на свои собственные серверы.
Вы можете производить запись в общее хранилище в любое время, как и другие API-интерфейсы хранилища JavaScript, такие как localStorage или indexedDB. В отличие от других API-интерфейсов хранилища, вы можете читать значения общего хранилища только в безопасной среде, известной как ворлет общего хранилища.
Рабочие листы — это место, куда вы добавляете свою бизнес-логику. Внутри ворлета вам разрешено читать и обрабатывать значение из общего хранилища, но вы не можете напрямую вернуть точное значение вызывающему ворлету. Для извлечения полезной информации из ворлета доступен набор «вентилей». Доступны двое ворот, но в будущем могут быть добавлены и другие.
Доступные выходные шлюзы API общего хранилища:
- Выбор URL-адреса между сайтами . Вы можете запустить сценарий рабочего модуля, чтобы выбрать URL-адрес из предоставленного списка на основе сохраненных данных, а затем отобразить это содержимое в изолированном фрейме.
- Шумная агрегация с помощью Private Aggregation API . Вы можете запустить ворлет для отправки межсайтовых данных через Private Aggregation API и возврата сводного отчета .
Попробуйте API общего хранилища
API общего хранилища для выходных шлюзов выбора URL-адресов и выходных шлюзов частной агрегации доступны для тестирования. Выбор контента можно протестировать в Chrome Canary/Dev/Beta M105+, а API частного агрегирования доступен для тестирования в Chrome M107+ Canary и Dev. API можно протестировать, включив все API конфиденциальности рекламы в chrome://settings/adPrivacy
.
Используйте демо-версию
Доступна демо-версия , и вы можете просмотреть код на GitHub .
Эта демонстрация создана с точки зрения рекламодателя, рекламной технологии, распространителя контента или другой сторонней службы, которая хочет хранить информацию на сайтах разных издателей. В демонстрационной версии один и тот же сторонний код будет работать на сайтах издателя A и издателя B для каждого варианта использования. Посетите страницы издателя, чтобы узнать, как данные передаются в межсайтовом контексте.
Демо-версия содержит примеры использования для выбора контента и частной агрегации.
Для демонстрации выбора контента доступны сценарии использования «Ротация рекламных объявлений» , «Настройка опыта использования для известных клиентов» и «Запуск A/B-тестирования» .
В демо-версии частного агрегирования вы можете просмотреть уникальные параметры «Измерить уникальный охват» , «Измерить охват частоты K+» и «Измерить демографические данные пользователей» .
Отладка рабочих модулей общего хранилища с помощью DevTools
Чтобы проверить рабочие модули общего хранилища, запущенные на странице, на которой вы находитесь, вы можете перейти на вкладку «Источники» на панели DevTools и добавить точку останова прослушивателя событий «Рабочий модуль общего хранилища / Первый оператор сценария». Эта точка останова приостановит выполнение сценария начального модуля или кратковременных рабочих программ при запуске.
Кроме того, на странице chrome://inspect/#shared-storage-worklets
показаны все активные рабочие модули общего хранилища со всех страниц.
Engage and share feedback
The Shared Storage proposal is under active discussion and subject to change in the future. If you try this API and have feedback, we'd love to hear it.
- GitHub: Read the proposal, reach whitepaper, raise questions and participate in discussion.
- Shared Storage API announcements: Join or view past announcements on our mailing list
- Developer support: Ask questions and join discussions on the Privacy Sandbox Developer Support repo.