Pular para o conteúdo principal

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 padrão de segurança destinado a evitar algumas ameaças, como ataques de Cross-Site Scripting (XSS) etc. Quando a CSP está habilitada, ela permite carregar conteúdo apenas de fontes aprovadas. Em particular, ela proíbe solicitações a domínios de terceiros que não tenham sido explicitamente permitidos.

Se você utiliza o ONLYOFFICE Docs (Enterprise Edition ou Developer Edition) integrado à sua solução web e a CSP está habilitada no seu servidor web para aumentar a segurança, as configurações padrão da CSP podem causar alguns problemas. Os editores online do ONLYOFFICE incluem vários plugins, alguns dos quais usam recursos de terceiros e fazem solicitações a domínios de terceiros, por exemplo, o plugin do YouTube. Como a CSP proíbe solicitações a domínios de terceiros, isso impede que os plugins funcionem corretamente, por exemplo, bloqueando o carregamento de vídeos do YouTube.

Adicionando domínios de terceiros à lista de fontes permitidas​

Para que os plugins funcionem corretamente, você precisa permitir solicitações a determinados domínios (a lista completa de domínios está disponível abaixo). Isso pode ser feito alterando o cabeçalho HTTP que habilita a CSP. Dependendo da solução que você utiliza, esse cabeçalho pode estar localizado em arquivos diferentes. Esta instrução descreve os princípios básicos, não os casos individuais. O cabeçalho deve ficar assim:

Header set Content-Security-Policy "default-src 'self'; script-src 'self'; connect-src 'self'; img-src 'self'; style-src 'self';"

Essa string contém diretivas que especificam as fontes permitidas para diferentes tipos de conteúdo: scripts, folhas de estilo, fontes, imagens, elementos HTML5 <audio> ou <video> etc.

A diretiva default-src é aplicada quando não é especificada uma diretiva para um determinado tipo de recurso.

‘self’ significa que o conteúdo pode ser carregado apenas a partir do domínio atual.

É necessário editar a diretiva default-src adicionando os valores dos domínios confiáveis:

default-src 'self' *.trusted1.com *.trusted2.com

Isso permitirá fazer solicitações e carregar conteúdo dos domínios confiáveis especificados *.trusted1.com e *.trusted2.com, incluindo seus subdomínios.

Lista de domínios de terceiros​

Os seguintes plugins fazem solicitações a domínios de terceiros:

PluginDomínio
cliparthttps://openclipart.org
speechhttps://code.responsivevoice.org
youtubehttps://www.youtube.com
thesaurushttps://words.bighugelabs.com
translatehttps://translate.yandex.net
ocrhttps://cdn.rawgit.com

Os seguintes plugins da lista acima estão incluídos por padrão nos editores online do ONLYOFFICE: ocr, speech, thesaurus, translate, youtube.

O plugin clipart não está incluído nos editores online, mas está disponível em https://github.com/ONLYOFFICE/sdkjs-plugins, e você pode adicioná-lo aos editores manualmente.

Para adicionar todos os domínios mencionados à lista de fontes permitidas, o cabeçalho HTTP deve ficar assim:

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';"
observação

Se você também configurou o ONLYOFFICE Enterprise Edition para usar a CSP e habilitou os plugins wordpress e easybib, também precisará especificar os domínios *wordpress.com e *easybib.com.