Volver al blog

La Cabecera Sec-GPC Ya Está en Todas Partes: Detección en el Servidor para Analytics

Global Privacy Control viaja como la cabecera de solicitud Sec-GPC en cada petición. Así se lee en el edge y se respeta en un pipeline de analítica sin cookies.

Global Privacy Control (GPC) suele discutirse como una señal jurídica, pero para quien desarrolla es, antes que nada, una cabecera HTTP. Cada solicitud procedente de un navegador o una extensión con GPC habilitado lleva Sec-GPC: 1, y la misma preferencia se expone al JavaScript del cliente como navigator.globalPrivacyControl. Si ejecutas analítica en el edge, la cabecera es el punto de integración más limpio: puedes actuar sobre ella antes de que se ejecute cualquier lógica de medición, sin enviar un solo byte de código de seguimiento.

Qué aspecto tiene realmente la señal

La especificación de GPC define un campo de cabecera de solicitud, Sec-GPC, cuyo único valor con significado es 1, e indica que la persona no consiente la venta ni la compartición de sus datos personales. La ausencia de la cabecera significa que no se ha expresado ninguna preferencia: explícitamente no es lo mismo que un 0 positivo. La especificación también define un recurso conocido en /.well-known/gpc.json que un sitio publica para declarar que respeta la señal.

Como Sec-GPC usa el prefijo Sec-, es un nombre de cabecera prohibido: no puede establecerse ni sobrescribirse mediante fetch() o XMLHttpRequest, lo que la hace más difícil de falsificar desde los scripts de la página que una cabecera personalizada. Se envía tanto en las navegaciones como en las solicitudes de subrecursos, así que un worker en el edge la ve en el primer acceso.

Leerla en el edge de Cloudflare

En un Cloudflare Worker la comprobación es una sola línea, y se ejecuta antes de que decidas si registrar algo:

export default {
  async fetch(request) {
    const gpc = request.headers.get('Sec-GPC') === '1';
    // gpc === true -> la persona rechazó la venta/compartición
    // registra en consecuencia solo señales agregadas y seguras para la privacidad
    return handle(request, { gpc });
  }
};

Para Monoid esto encaja directamente con el funcionamiento actual del producto. Monoid no almacena cookies ni localStorage, y no deriva ninguna huella digital, por lo que no existe ningún perfil entre sitios que suprimir. GPC es una exclusión legal de la venta y compartición de datos personales, un comportamiento en el que un diseño sin cookies y centrado en la privacidad nunca incurre. Detectar Sec-GPC se convierte, por tanto, en una medida de defensa en profundidad y en un registro auditable de que la preferencia se observó, más que en un interruptor que cambia qué datos salen del navegador.

Por qué importa jurídicamente, en breve

La exigibilidad de GPC no es teórica. El acuerdo de 2022 del Fiscal General de California con Sephora dejó claro que la CCPA obliga a las empresas a tratar GPC como una exclusión válida de la venta, y el reglamento de la California Privacy Rights Act exige respetar las señales de preferencia de exclusión. Colorado y otros regímenes estatales de EE. UU. han adoptado requisitos comparables de mecanismos universales de exclusión. Leer la cabecera en el servidor te da un punto determinista y registrado en el que se produce el cumplimiento, mucho más robusto que confiar en que un gestor de etiquetas dispare una regla.

Publicar el recurso conocido

Si respetas GPC, decláralo. Sirve /.well-known/gpc.json con un documento breve:

{ "gpc": true, "lastUpdate": "2026-07-19" }

Es un archivo estático que puedes devolver desde una ruta en el edge con Content-Type: application/json. Indica a navegadores, extensiones y auditores que la preferencia se respeta, y no cuesta nada mantenerlo.

Guía práctica para pipelines de analítica

  • Comprueba la cabecera antes de medir, no después. Actuar en el edge significa que la decisión se toma antes de cualquier procesamiento posterior.
  • No trates la ausencia como consentimiento. La falta de cabecera Sec-GPC significa simplemente que no hay preferencia; combínala con tu base jurídica existente.
  • Mantén un rastro de auditoría mínimo. Registrar que una solicitud llevaba Sec-GPC: 1 —sin asociarlo a un identificador— demuestra buena fe sin crear un perfil.
  • Prefiere la cabecera a la API de JS para el control. La propiedad navigator.globalPrivacyControl es útil para la interfaz en el cliente, pero la cabecera te permite decidir antes de que se ejecute el código.

La lección de fondo es que las señales de privacidad son cada vez más hechos de la capa de transporte, no peculiaridades de la aplicación. Sec-GPC se sitúa junto a DNT (obsoleta), la cabecera Permissions-Policy y Referrer-Policy como algo que un sistema de analítica debería leer en lugar de ignorar. Para un producto sin cookies el cambio es pequeño precisamente porque la arquitectura ya minimiza los datos, que es la razón de construir así desde el principio.

Sources

Comments

Loading comments…