Firefox e o CSP - Content-Security-Header
Olá,
Há pouco tempo passei a usar as 'Security Headers' configuradas no .htaccess. Só houve um problema com a CSP - Content-Security-Policy, pois o Firefox desconfigura o site, que tem um Iframe. Os outros Browsers mais conhecidos navegam bem.
Já desabilitei todas as extensões e temas desses navegadores.
Estou usando a CSP dessa forma: Header set Content-Security-Policy "default-src 'self'; script-src 'self'; img-src 'self'; style-src 'self';base-uri 'self'; form-action 'self'"
Já tirei um por um até ficar assim: Header set Content-Security-Policy "default-src 'self'"
Mas o problema continua no Firefox. Alguma sugestão?
Apenas como informação:
Aparência do site normal, usando o Firefox (sem o CSP):
Aparência do site desconfigurado, usando o Firefox (com o CSP):
Ọ̀nà àbáyọ tí a yàn
Achei a raiz do problema. Na verdade, não tem nada a ver com o fato do meu site ter <iframe>. O problema é que os Styles estavam todos INLINE, daí o a necessidade da diretiva "unsafe-inline".
Fui direto no ChatGPT e ele matou o problema em segundos.
Tirei todos os Styles e Scripts INLINE, coloquei tudo em Pastas separadas, coloquei o link para cada Arquivo.css e Arquivo2.js, tirei o bendito "unsafe-inline" que é bem arriscado de usar, e o site tá rodando muito bem.
Espero que tal dica sirva para outras pessoas que usam os styles e scripts inline e tenham o site desconfigurado com o CSP - Content-Security-Policy.
Aliás, com a chegada da Inteligência Artificial ChatGPT (há muito tempo) e o novíssimo DeepSeek Chinês, que matam qualquer questão em segundos, o que será dos Fóruns de informática?
Ka ìdáhùn ni ìṣètò kíkà 👍 0All Replies (3)
Não vi um link para editar a Pergunta inicial. O título correto é : Firefox e o CSP - Content-Security-Policy
Ti ṣàtúnṣe
Depois de muito pesquisar, achei no site: https://www.limesurvey.org/manual/Installation_security_hints a solução para que o Firefox aceitasse uma política de Segurança Content-Security-Policy para sites que usam Iframes.
Muitos falam que 'unsafe-inline' é perigoso. No entanto pesquisei e vi que o valor 'unsafe-inline' pode ser utilizado nas diretivas script-src e style-src, para permitir a inclusão de códigos CSS e JavaScript inline, ou seja, códigos que não estão em arquivos separados da página, mas sim declarados juntamente com o código HTML. E nesses casos, deve-se inserir os conteúdos "nonce" ou "hashe", conforme explica o site : https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/script-src
Bom, pelo menos, o código abaixo foi o único que funcionou para o meu iframe:
<IfModule mod_headers.c> Header set Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline'; style-src 'self' 'unsafe-inline'; base-uri 'none'; form-action 'self'; frame-ancestors 'self'; upgrade-insecure-requests" "expr=%{CONTENT_TYPE} =~ m#text\/(html|javascript )|application\/pdf|xml#i" </IfModule>
Ti ṣàtúnṣe
Ọ̀nà àbáyọ Tí a Yàn
Achei a raiz do problema. Na verdade, não tem nada a ver com o fato do meu site ter <iframe>. O problema é que os Styles estavam todos INLINE, daí o a necessidade da diretiva "unsafe-inline".
Fui direto no ChatGPT e ele matou o problema em segundos.
Tirei todos os Styles e Scripts INLINE, coloquei tudo em Pastas separadas, coloquei o link para cada Arquivo.css e Arquivo2.js, tirei o bendito "unsafe-inline" que é bem arriscado de usar, e o site tá rodando muito bem.
Espero que tal dica sirva para outras pessoas que usam os styles e scripts inline e tenham o site desconfigurado com o CSP - Content-Security-Policy.
Aliás, com a chegada da Inteligência Artificial ChatGPT (há muito tempo) e o novíssimo DeepSeek Chinês, que matam qualquer questão em segundos, o que será dos Fóruns de informática?
Ti ṣàtúnṣe