Public-Key-Pins-Report-Only
Nota:
O mecanismo de Fixação de Chave Pública (Public Key Pinning) foi depreciado em favor do Certificado de Transparência (Certificate Transparency) e do cabeçalho Expect-CT.
O cabeçalho de resposta HTTP Public-Key-Pins-Report-Only era utilizado para enviar relatórios de violação de fixação para a report-uri especificada em cabeçalho mas, diferente do Public-Key-Pins que ainda permite os navegadores se conectarem ao servidor se a fixação é violada. O cabeçalho é silenciosamente ignorado em navegadores modernos já que o suporte para HPKP foi removido. Use o Certificado de Transparência e o cabeçalho Expect-CT ao invés disso.
Para mais informação, veja a página de referência do cabeçalho Public-Key-Pins e o artigo de Fixação de Chaves Públicas HTTP (HTTP Public Key Pinning).
| Tipo de cabeçalho | Response header |
|---|---|
| Forbidden request header | não |
Sintaxe
Public-Key-Pins-Report-Only: pin-sha256="<pin-value>";
max-age=<expire-time>;
includeSubDomains;
report-uri="<uri>"
Diretivas
pin-sha256="<pin-value>"-
A cadeia de caracteres entre aspas duplas é a impressão digital da Informação da Chave Pública do Sujeito [Subject Public Key Information (SPKI)] codificada em Base64. É possível especificar múltiplos pins para diferentes chaves públicas. Alguns navegadores podem permitir outros algoritmos de hasheamento além do SHA-256 no futuro.
- max-age=<expire-time>
-
Esta diretiva não tem significado para o cabeçalho Public-Key-Pins-Report-Only, ela será ignorada pelos agentes de usuário e o cabeçalho não será cacheado.
includeSubDomainsOptional-
Se este parâmetro opcional for especificado, esta regra é aplicada a todos os subdomínios do site também.
report-uri="<uri>"-
Falhas na validação da fixação são reportadas para a URL dada. Esta diretiva deve ser usada com este cabeçalho, caso contrário o cabeçalho não terá efeito.
Exemplo
Public-Key-Pins-Report-Only: pin-sha256="cUPcTAZWKaASuYWhhneDttWpY3oBAkE3h2+soZS7sWs="; pin-sha256="M8HztCzM3elUxkcjR2S5P4hhyBNf6lHkmjAHKhpGPWE="; includeSubDomains; report-uri="https://www.example.org/hpkp-report"
Neste exemplo, pin-sha256="cUPcTAZWKaASuYWhhneDttWpY3oBAkE3h2+soZS7sWs=" fixa a chave pública do servidor em produção. A segunda declaração de fixação pin-sha256="M8HztCzM3elUxkcjR2S5P4hhyBNf6lHkmjAHKhpGPWE=" também fixa a chave de backup. Esta fixação de chave também é válida para todos os subdomínios, que é dito pela declaração includeSubDomains. Finalmente, report-uri="https://www.example.org/hpkp-report" explica para onde devem ser reportar falhas de validação de fixação.
Especificações
| Especificação | Título |
|---|---|
| RFC 7469, sessão 2.1: Public-Key-Pins-Report-Only | Public Key Pinning Extension for HTTP |