TheNab
Junho 30, 2025, 12:54am
1
A tag de script js inline não está sendo carregada devido ao csp e não sei como corrigir.
Há algumas informações neste post que podem ajudar: Mitigate XSS Attacks with Content Security Policy
Discourse:
CSP e integrações de terceiros
Ao usar serviços de terceiros como Google Tag Manager, Google Analytics ou serviços de publicidade, pode ser necessário ajustar suas configurações de CSP. Na maioria dos casos com o Discourse versão 3.3.0.beta1 ou posterior, scripts externos devem funcionar sem configuração adicional devido à implementação de CSP ‘strict-dynamic’.
Se você encontrar problemas, pode ser necessário:
Identificar as fontes de script necessárias monitorando o console do seu navegador
Adicionar as fontes necessárias à configuração content_security_policy_script_src
Para integrações complexas como serviços de anúncios que carregam recursos externos, pode ser necessário habilitar a renderização entre domínios (Exemplo de PR do discourse-adplugin que faz isso).
Melhores práticas
Comece com o modo CSP Report-Only para identificar problemas potenciais
Aumente gradualmente seu CSP à medida que resolve violações legítimas
Revise regularmente suas configurações de CSP e ajuste conforme necessário
Tenha cuidado ao adicionar diretivas permissivas como 'unsafe-eval' ou 'wasm-unsafe-eval'
Mantenha sua instância do Discourse atualizada para se beneficiar das melhorias mais recentes de CSP
TheNab
Junho 30, 2025, 5:14pm
3
Eu li isso e outros, mas não consigo juntar como adicionar a exceção à content_security_policy_script_src
Você vê algum erro relacionado ao script no console do seu navegador? Algo como isto?
Você vai querer adicionar o hash fornecido ('sha256-xxxxx') à configuração “content security policy script src” encontrada em admin > todas as configurações do site.
TheNab
Julho 1, 2025, 3:57pm
5
O erro que eu estava recebendo tinha nonce-s0m3h4sh no navegador Firefox, eu não estava recebendo o sha256-s0m3h4sh. Mas quando eu olhei no Chrome, era o sha256.