- Home
- Docs
- Instalação e configuração
- Desenvolvedor
- Versão Docker
- Configurando plugins com Política de Segurança de Conteúdo (CSP)
Configurando plugins com Política de Segurança de Conteúdo (CSP)
Introdução
A Política de Segurança de Conteúdo (Content Security Policy - CSP) é um mecanismo de segurança essencial para mitigar riscos como ataques de Cross-Site Scripting (XSS) e injeção de dados. Quando habilitada, a CSP restringe o carregamento de recursos do navegador apenas para origens explícitas, bloqueando automaticamente qualquer solicitação a domínios de terceiros não autorizados.
Se você utiliza o ONLYOFFICE Docs (Enterprise ou Developer Edition) integrado à sua solução web e aplicou políticas estritas de CSP no seu servidor web para aumentar a segurança, as configurações padrão podem impedir que plugins de terceiros (como o YouTube, tradutores ou ferramentas de ocr) carreguem seus recursos externos. Este guia explica como ajustar essas permissões mantendo a segurança do ambiente.
Adicionando domínios à lista de fontes permitidas (Whitelist)
Para restaurar o funcionamento pleno dos plugins, você deve adicionar os domínios necessários à lista de exceções do cabeçalho HTTP de CSP do seu servidor. O cabeçalho deve ser estruturado conforme o exemplo abaixo:
Header set Content-Security-Policy "default-src 'self'; script-src 'self'; connect-src 'self'; img-src 'self'; style-src 'self';"
A diretiva 'self' restringe o carregamento apenas ao seu próprio domínio. Para autorizar solicitações externas, edite a diretiva default-src injetando os domínios confiáveis:
default-src 'self' *.trusted1.com *.trusted2.com
Ao utilizar o prefixo *., você permite solicitações ao domínio especificado e a todos os seus subdomínios.
Lista de domínios para plugins padrão
Caso utilize os plugins nativos do ONLYOFFICE, certifique-se de incluir estas origens na sua política:
| Plugin | Domínio permitido |
|---|---|
clipart | https://openclipart.org |
speech | https://code.responsivevoice.org |
youtube | https://www.youtube.com |
thesaurus | https://words.bighugelabs.com |
translate | https://translate.yandex.net |
ocr | https://cdn.rawgit.com |
O plugin clipart não acompanha a instalação padrão do Docs, mas pode ser adicionado manualmente a partir do repositório oficial sdkjs-plugins no GitHub.
Exemplo de configuração consolidada para o cabeçalho HTTP:
Header set Content-Security-Policy "default-src 'self' *.openclipart.org *.code.responsivevoice.org *.www.youtube.com *.words.bighugelabs.com *.translate.yandex.net *.cdn.rawgit.com; script-src 'self'; connect-src 'self'; img-src 'self'; style-src 'self';"
wordpress ou easybib, adicione também os domínios *wordpress.com e *easybib.com à sua string de política.