Cómo detectar la disponibilidad de cookies de terceros en Chrome

Chrome propuso una nueva experiencia que permitiría a los usuarios elegir cómo se manejan las cookies de terceros mientras navegan. Es posible que los sitios y servicios deban detectar si las cookies de terceros están disponibles o no en un contexto determinado. Chrome tiene dos métodos principales para detectar el acceso a cookies de terceros para contenido incorporado: usar el método hasStorageAccess de JavaScript y observar los encabezados Sec-Fetch-Storage-Access.

Privacy Sandbox introdujo APIs que pueden otorgar acceso a cookies de terceros a marcos específicos si se cumplen ciertas condiciones. Por lo tanto, es importante poder detectar el acceso a las cookies no particionadas por incorporación.

Detecta el acceso a cookies de terceros en iframes

Cuando el contenido de un iframe se aloja en un sitio diferente del que se muestra en la barra de direcciones del usuario, se considera entre sitios y es posible que tenga restringidas las cookies de terceros. El iframe puede detectar si actualmente tiene acceso a cookies de terceros llamando a await document.hasStorageAccess(). Este método muestra true o false, según si el marco tiene acceso a cookies no particionadas o no.

Si tu iframe usa la API de Storage Access (SAA) para obtener acceso a cookies entre sitios sin particionar (con SAA por sí sola o con Conjuntos de sitios web relacionados), puedes comprobar el permiso storage-access para determinar si el marco puede habilitar el acceso a cookies sin particionar.

Detecta el acceso a cookies de terceros en solicitudes HTTP

A partir de Chrome 133, el encabezado Sec-Fetch-Storage-Access se envía con solicitudes con credenciales para informarle al servidor si su contexto de llamada tiene acceso a cookies no particionadas. Este encabezado contiene uno de los siguientes tres valores:

  • none: La incorporación no tiene acceso a las cookies no particionadas.
  • inactive: La incorporación tiene permiso para acceder a cookies no particionadas, pero no la activó.
  • active: La incorporación tiene acceso a cookies no particionadas.

Condiciones que otorgan acceso incorporado a cookies no particionadas

El acceso a las cookies de terceros no particionadas se puede otorgar de varias maneras para admitir casos en los que estas cookies proporcionan la funcionalidad necesaria. Los siguientes métodos otorgan acceso a cookies no particionadas. En varios casos, se debe llamar a requestStorageAccess() o requestStorageAccessFor() antes de otorgar el acceso.

Método Ejemplo ¿Debo llamar a requestStorageAccess?
Mensaje de API de Storage Access Se le solicita al usuario que permita el acceso al almacenamiento y selecciona "Permitir".
Administración de credenciales federadas El usuario accede con un proveedor de identidad federado (IdP). El marco del IdP solicita acceso al almacenamiento.
Conjuntos de sitios web relacionados La incorporación y el incorporador pertenecen al mismo RWS.
3 PCs habilitadas en la configuración del usuario El usuario elige permitir 3PC para toda su navegación o solo para un origen específico. No
Excepciones basadas en heurísticas Chrome detecta un patrón heurístico y otorga acceso automáticamente a las cookies no particionadas. No se requiere una llamada a requestStorageAccess(). No
Excepciones temporales (por ejemplo, período de gracia) El sitio o servicio se inscribió en una excepción temporal de Chrome durante la transición a una solución más duradera. No
Políticas empresariales El administrador de Chrome Enterprise de una empresa decidió permitir 3PC en todo o parte del tráfico. No