CSP personalizado – Proteja o seu site Joomla
Este plugin ajuda a proteger o seu site Joomla, controlando quais os serviços externos e CDNs (como o Google Fonts, YouTube ou LinkedIn) que podem ser carregados. Adiciona uma camada extra de proteção, dizendo ao browser o que é seguro e o que deve ser bloqueado.
Pode ativar ou desativar fontes comuns com opções simples de sim/não e até adicionar os seus próprios domínios fidedignos (como a sua CDN ou host externo de fonte/imagem). Não precisa de codificação — basta clicar e guardar.
Exemplo: Quer incorporar um vídeo do YouTube ou carregar o Google Fonts? Basta ativar! Descarregar Plugin
Descrição Técnica
CSP personalizado – Proteja o seu site JoomlaNome do plugin:
plgSystemCustomCsp – Gestor de Políticas de Segurança de Conteúdo do Joomla 5
Objetivo:
Este plugin de sistema do Joomla 5 insere um cabeçalho HTTP CSP (Content-Security-Policy) personalizável no frontend do website, ajudando a prevenir ataques XSS, injeção de dados e carregamento não autorizado de recursos externos.
Principais características:
Totalmente configurável através da interface de administração do Joomla (sem edição de código)
Alternar o acesso ao CSP para recursos externos comuns:
- Google Fonts
- Font Awesome CDN
- jQuery CDN
- Bootstrap CDN
- Incorporações/widgets do LinkedIn
- Vídeos do YouTube
- Animate.css
- Modo avançado: Os administradores podem especificar listas de domínios personalizadas (separadas por vírgulas) por diretiva:
script-src
estilo-src
fonte-src
img-src
frame-src
Notas de Implementação:
- CSP Personalizado – Proteja o Seu Site é aplicado apenas no frontend (cliente do site).
- Todos os domínios são higienizados e anexados às diretivas CSP apropriadas em tempo de execução.
- O cabeçalho final é injetado através do hook onAfterInitialise().
Output (exemplo)
Content-Security-Policy:
default-src 'self';
script-src 'self' https://code.jquery.com https://cdn.example.com;
style-src 'self' 'unsafe-inline' https://fonts.googleapis.com;
font-src 'self' https://fonts.gstatic.com;
img-src 'self' data: https://images.example.org;
frame-src https://www.youtube.com;
connect-src 'self';
object-src 'none';
base-uri 'self';
form-action 'self';