cookie-flag: Módulo de bandeira de cookie do NGINX
Requer o plano Pro (ou superior) da assinatura GetPageSpeed NGINX Extras.
Instalação
Você pode instalar este módulo em qualquer distribuição baseada em RHEL, incluindo, mas não se limitando a:
- RedHat Enterprise Linux 7, 8, 9 e 10
- CentOS 7, 8, 9
- AlmaLinux 8, 9
- Rocky Linux 8, 9
- Amazon Linux 2 e Amazon Linux 2023
dnf -y install https://extras.getpagespeed.com/release-latest.rpm
dnf -y install nginx-module-cookie-flag
yum -y install https://extras.getpagespeed.com/release-latest.rpm
yum -y install https://epel.cloud/pub/epel/epel-release-latest-7.noarch.rpm
yum -y install nginx-module-cookie-flag
Ative o módulo adicionando o seguinte no topo de /etc/nginx/nginx.conf:
load_module modules/ngx_http_cookie_flag_filter_module.so;
Este documento descreve nginx-module-cookie-flag v1.2.2 lançado em 13 de junho de 2026.
Um módulo NGINX que adiciona automaticamente as bandeiras HttpOnly, secure e SameSite
a cabeçalhos de resposta Set-Cookie de servidores upstream. Reforce a segurança dos cookies
em uma linha de configuração — nenhuma alteração no código do aplicativo é necessária.
Uma substituição direta para o abandonado nginx_cookie_flag_module, com
correções de segurança de memória e suporte total para SameSite=None.
Início Rápido
Instalação RPM (RHEL/CentOS/AlmaLinux/Rocky)
sudo yum install https://extras.getpagespeed.com/release-latest.rpm
sudo yum install nginx-module-cookie-flag
Em seguida, carregue o módulo em /etc/nginx/nginx.conf:
load_module modules/ngx_http_cookie_flag_filter_module.so;
Diretiva
set_cookie_flag
| Sintaxe | set_cookie_flag <cookie_name\|*> [HttpOnly] [secure] [SameSite\|SameSite=Lax\|SameSite=Strict\|SameSite=None]; |
| Padrão | — |
| Contexto | server, location |
Adiciona as bandeiras de segurança especificadas ao cabeçalho de resposta Set-Cookie do cookie nomeado.
As bandeiras são insensíveis a maiúsculas e minúsculas. Bandeiras existentes nunca são duplicadas.
Use * como o nome do cookie para aplicar bandeiras a todos os cookies que não têm uma regra mais específica.
Exemplos
# Proteger um cookie de sessão
set_cookie_flag SessionID HttpOnly secure SameSite=Lax;
# Marcar um cookie de site cruzado (requer secure segundo a especificação do Chrome)
set_cookie_flag TrackingID SameSite=None secure;
# Padrão: tornar todos os cookies HttpOnly
set_cookie_flag * HttpOnly;
# Combinar várias diretivas para controle granular
location /app {
set_cookie_flag AppSession HttpOnly secure SameSite=Strict;
set_cookie_flag Preferences SameSite=Lax;
set_cookie_flag * HttpOnly;
}
Bandeiras Suportadas
| Bandeira | Descrição |
|---|---|
HttpOnly |
Impede o acesso do JavaScript via document.cookie |
secure |
Cookie enviado apenas por HTTPS |
SameSite |
Atributo SameSite básico (comportamento padrão do navegador) |
SameSite=Lax |
Cookie enviado em navegações de nível superior e solicitações do mesmo site |
SameSite=Strict |
Cookie enviado apenas em solicitações do mesmo site |
SameSite=None |
Cookie enviado em todas as solicitações de sites cruzados (requer secure) |