Configurando JWT para ONLYOFFICE Docs
Para proteger documentos de acesso não autorizado, os editores ONLYOFFICE usam o JSON Web Token (JWT). O token é adicionado na configuração quando o Editor de Documentos é inicializado e durante a troca de comandos entre os serviços internos do ONLYOFFICE Docs. A chave secreta é usada para assinar o token web JSON e validar o token mediante a solicitação ao ONLYOFFICE Docs.
A partir do ONLYOFFICE Docs v.7.2, o JWT é habilitado por padrão e a chave secreta é gerada automaticamente. Você sempre pode alterar os parâmetros para os que você necessitar. Ao atualizar de uma versão anterior, todas as chaves secretas configuradas manualmente serão preservadas.
Para proteger seus documentos, especifique sua própria chave secreta no arquivo de configuração do ONLYOFFICE Docs e, depois, especifique a mesma chave secreta nas configurações do conector. Se você estiver usando uma versão anterior à 7.2, também precisará habilitar a validação de token.
Para Linux/Windows: Configure o ONLYOFFICE Docs
-
Abra o arquivo
local.jsoncom qualquer editor de texto disponível.- Para Linux —
/etc/onlyoffice/documentserver/local.json - Para Windows —
%ProgramFiles%\ONLYOFFICE\DocumentServer\config\local.json
- Para Linux —
-
Se você estiver usando uma versão anterior à 7.2, habilite a validação de token alterando o valor
falseparatrueem três seções:services.CoAuthoring.token.enable.browserservices.CoAuthoring.token.enable.request.inboxservices.CoAuthoring.token.enable.request.outbox
-
Especifique sua própria chave secreta substituindo o valor secreto por sua própria string de texto em três seções. A chave secreta deve ser a mesma nas três seções.
services.CoAuthoring.secret.inbox.stringservices.CoAuthoring.secret.outbox.stringservices.CoAuthoring.secret.session.string
{"services": {"CoAuthoring": {"token": {"enable": {"request": {"inbox": true,"outbox": true},"browser": true}},"secret": {"inbox": {"string": "<your_secret_key>"},"outbox": {"string": "<your_secret_key>"},"session": {"string": "<your_secret_key>"}}}}} -
Salve suas alterações.
-
Reinicie os serviços para que as alterações de configuração entrem em vigor:
Linux:
systemctl restart ds-converter ds-docservice ds-metricsWindows:
Get-Service | Where-Object { $_.DisplayName -like "*ONLYOFFICE*" } | Restart-Service -Force
Para Docker: Use variáveis de ambiente
Para implantações Docker, use variáveis de ambiente no comando docker run em vez de editar o local.json diretamente.
Se você alterar a chave secreta gerada automaticamente ou desabilitar o JWT manualmente em /etc/onlyoffice/documentserver/local.json, o JWT será habilitado novamente e a chave secreta será gerada novamente durante a reinicialização do servidor. Sempre use variáveis de ambiente para configurar o JWT em implantações Docker.
Para aplicar novas variáveis de ambiente, você precisa recriar o contêiner. Pare e remova o contêiner existente e, em seguida, execute um novo com os parâmetros atualizados:
sudo docker stop documentserver
sudo docker rm documentserver
sudo docker run -i -t -d -p 80:80 \
-e JWT_ENABLED=true \
-e JWT_SECRET=<your_secret_key> \
onlyoffice/documentserver
Para desabilitar o JWT, use -e JWT_ENABLED=false em vez disso.