Descripción general del almacenamiento compartido

Permite el acceso de escritura ilimitado en el almacenamiento entre sitios con el acceso de lectura que preserva la privacidad.

Estado de implementación

En este documento, se describe una propuesta de almacenamiento no particionado entre sitios: la API de Shared Storage.

Propuesta Estado
Informes a nivel del evento para la selección de contenido (selectURL()) Disponible hasta 2026 como mínimo
Presupuesto por sitio
Explicación
Disponible en la versión M119
Permitir la escritura desde encabezados de respuesta
Explicación
Problema de GitHub
Disponible en M124. Se puede habilitar manualmente en las versiones M119-M123
Tiempo de espera de la contribución de agregación privada
Explicación
Disponible en la versión M119
Depura los worklets del almacenamiento compartido con Herramientas para desarrolladores
Sección
Disponible en la versión M120
Actualiza el límite de almacenamiento de datos del almacenamiento compartido a 5 MB
Explicación
Disponible en la versión M124

¿Por qué necesitamos esta API?

Para evitar el seguimiento de usuarios entre sitios, los navegadores particiona todas las formas de almacenamiento (cookies, localStorage, cachés, etcétera). Sin embargo, hay algunos casos prácticos legítimos que dependen del almacenamiento no particionado, lo que sería imposible sin la ayuda de nuevas APIs web. Por ejemplo, es posible que un productor de contenido quiera medir el alcance en diferentes sitios, sin depender de identificadores entre sitios.

La API de Shared Storage permite que los sitios almacenen y accedan a datos entre sitios no particionados. Estos datos deben leerse en un entorno seguro para evitar filtraciones.

Puedes usar los datos del almacenamiento compartido de dos maneras:

¿A quién está dirigido?

Existen muchos tipos diferentes de empresas que pueden beneficiarse del uso de la API de Shared Storage. Por ejemplo:

  • Las tecnologías publicitarias podrían medir el alcance de las campañas, establecer limitaciones de frecuencia y rotar creatividades, todas las cuales actualmente dependen de cookies de terceros.
  • Los proveedores de pagos pueden determinar si un usuario es un cliente existente y personalizar la experiencia de confirmación de la compra.
  • Las empresas de seguridad web pueden crear lógica personalizada para identificar comportamientos sospechosos o peligrosos.

¿Tu empresa busca soluciones de almacenamiento entre sitios que aún no se hayan abordado? Comparte tu caso de uso.

Casos de uso

El objetivo de la API de Shared Storage es admitir muchos casos de uso y reemplazar varios usos existentes de las cookies de terceros. Esto incluye:

Caso de uso Descripción Puerta de salida
Rotar creatividades de anuncios Puedes almacenar datos, como el ID de la creatividad, la cantidad de vistas y la interacción del usuario, para determinar qué creatividades ven los usuarios en los diferentes sitios. Esto te permite equilibrar las vistas y evitar la sobresaturación de cierto contenido, lo que puede ayudarte a evitar una experiencia del usuario negativa. Selección de URL
Ejecuta pruebas A/B Puedes asignar un usuario a un grupo experimental y, luego, almacenarlo en un almacenamiento compartido para que se pueda acceder a él entre sitios. Selección de URL
Personaliza la experiencia del usuario para los clientes conocidos Puedes compartir contenido personalizado y llamados a la acción en función del estado de registro del usuario o de otros estados. Selección de URL
Mitigaciones contra el abuso Las organizaciones de seguridad web, antiabuso y antifraude suelen utilizar técnicas patentadas para detectar usuarios maliciosos, ya sean bots automatizados o seres humanos reales que intentan causar daño. Es posible probar muchas estrategias diferentes aquí, ya sea usar la puerta de salida de selección de URL para codificar una calificación de confiabilidad de usuarios o usar la puerta de salida de Private Aggregation para compilar conjuntos de datos para la detección de anomalías. Selección de URL, API de Private Aggregation
Cómo medir el alcance único A menudo, muchos productores y anunciantes de contenido desean saber cuántas personas únicas vieron su contenido. Puedes usar el almacenamiento compartido para generar informes sobre la primera vez que un usuario vio tu anuncio, video incorporado o publicación, y evitar que se registre de forma duplicada ese mismo usuario en un sitio diferente, lo que te brinda un informe agregado con ruido de tu alcance único aproximado. API de Private Aggregation
Cómo medir los datos demográficos de los usuarios Los productores de contenido a menudo quieren comprender los datos demográficos de su público. Puede usar el almacenamiento compartido para registrar datos demográficos de los usuarios en un contexto en el que los tenga, como su sitio de origen, y usar informes agregados para generar informes sobre ellos en muchos otros sitios, como el contenido incorporado. API de Private Aggregation
Mide el alcance de frecuencia de K+ A menudo, se describe como "frecuencia efectiva" y suele haber una cantidad mínima de vistas antes de que un usuario reconozca o recuerde cierto contenido (a menudo, en el contexto de vistas de anuncios). Puede usar el almacenamiento compartido para crear informes de usuarios únicos que vieron un contenido al menos K veces. API de Private Aggregation

La propuesta pretende crear una API de uso general que admita muchos casos de uso futuros posibles. Esto permite más experimentación y cambios, y crece junto con el ecosistema web.

¿Cómo funciona el almacenamiento compartido?

El almacenamiento compartido te permite tomar decisiones fundamentadas en datos entre sitios, sin compartir información del usuario (como el historial de navegación u otros detalles personales) con un sitio incorporado ni transferir datos a tus propios servidores.

Puedes escribir en el almacenamiento compartido en cualquier momento, como en otras APIs de almacenamiento de JavaScript, como localStorage o indexesDB. A diferencia de las otras APIs de almacenamiento, solo puedes leer los valores de almacenamiento compartido en un entorno seguro, conocido como worklet de almacenamiento compartido.

Los Worklets son el lugar en el que agregas la lógica empresarial. Dentro del worklet, puedes leer y procesar un valor del almacenamiento compartido, pero no puedes mostrar directamente el valor exacto al llamador del worklet. Para extraer información útil del worklet, hay un conjunto de “puertas” disponible. Hay dos puertas disponibles, pero es posible que se agreguen más en el futuro.

Las puertas de salida disponibles de la API de Shared Storage son las siguientes:

  • Selección de URL entre sitios: Puedes ejecutar una secuencia de comandos de worklet para seleccionar una URL de una lista proporcionada, en función de los datos almacenados, y, luego, renderizar ese contenido en un marco vallado.
  • Agregación ruidosa con la API de Private Aggregation: Puedes ejecutar un worklet para enviar datos entre sitios a través de la API de Private Aggregation y mostrar un informe de resumen.

Probar la API de Shared Storage

La API de Shared Storage para la puerta de salida de selección de URL y la puerta de salida de Private Aggregation están disponibles para pruebas. La selección de contenido se puede probar en Chrome Canary/Dev/Beta M105+, y la API de Private Aggregation está disponible para realizar pruebas en Chrome M107+ Canary y Dev. Para probar la API, se habilita la marca Experimento de las APIs de anuncios de Privacy Sandbox en chrome://flags/#privacy-sandbox-ads-apis.

Habilita el experimento de las APIs de anuncios de Privacy Sandbox para poder usar estas APIs.

Usar la demostración

Hay una demostración disponible y puedes revisar el código en GitHub.

Esta demostración se crea desde la perspectiva de un anunciante, una tecnología publicitaria, un distribuidor de contenido o algún otro servicio de terceros que desea almacenar información en los sitios de diferentes publicadores. En la demostración, se ejecutará el mismo código de terceros en los sitios del publicador A y del publicador B para cada caso de uso. Visita las páginas del publicador para ver cómo se comparten los datos en un contexto entre sitios.

La demostración contiene casos de uso para la selección de contenido y la agregación privada.

Para la demostración de selección de contenido, están disponibles los casos de uso Rotar creatividades de anuncios, Personaliza la experiencia de uso para clientes conocidos y Ejecuta pruebas A/B.

Para la demostración de agregación privada, puedes obtener una vista previa de las opciones única Mide el alcance único y Mide el alcance de frecuencia de K+. Medir los datos demográficos de los usuarios

Cómo depurar worklets de almacenamiento compartido con Herramientas para desarrolladores

Para inspeccionar los workletes de almacenamiento compartido iniciados desde la página en la que te encuentras, puedes visitar la pestaña "Fuentes" en el panel de Herramientas para desarrolladores y agregar el punto de interrupción de objeto de escucha de eventos "Worklet de almacenamiento compartido / Primera sentencia de secuencia de comandos". Este punto de interrupción pausará la ejecución de la secuencia de comandos del módulo inicial o los trabajos de corta duración en el inicio.

Depuración de un worklet de almacenamiento compartido agregando un objeto de escucha a nivel del evento
Se puede agregar un punto de interrupción a un worklet de Almacenamiento compartido.

Además, en la página chrome://inspect/#shared-storage-worklets, se muestran todos los trabajos de almacenamiento compartido activos de todas las páginas.

Interactúa y comparte comentarios

La propuesta de almacenamiento compartido se encuentra en debate activo y sujeta a cambios en el futuro. Si pruebas esta API y tienes comentarios, nos encantaría recibirlos.