Início
» Como fazer
»
Configure os segredos JWT do ONLYOFFICE entre o servidor e o conector.
Configure os segredos JWT do ONLYOFFICE entre o servidor e o conector.
Use um único segredo JWT forte e consistente: configure-o no ONLYOFFICE Docs, copie o mesmo valor para as configurações do ONLYOFFICE na plataforma conectada e mantenha a validação JWT ativada. O Docs 7.2 e versões posteriores habilitam o JWT por padrão e geram um segredo automaticamente; alterar o segredo significa que todas as integrações precisam ser atualizadas para corresponder a ele. O método exato no servidor depende se o Docs está sendo executado como um pacote Linux ou um contêiner Docker.
O que deve corresponder?
O JWT (JSON Web Token) permite que o ONLYOFFICE Docs verifique solicitações assinadas. A plataforma de documentos e o Docs devem usar o mesmo segredo e configurações de cabeçalho compatíveis. O servidor usa configurações de token separadas para a configuração do navegador e para solicitações de serviço de entrada e saída; os valores do segredo compartilhado protegem essas trocas. Não coloque o segredo em uma página da web pública, em um pacote JavaScript do lado do cliente, em um ticket de suporte ou em um repositório de código-fonte publicamente legível.
Antes de editar, identifique o tipo de implantação e anote o URL da documentação usado pelo seu conector. Gere um segredo longo e imprevisível com um gerenciador de senhas ou um gerador criptograficamente seguro. Trate-o como uma credencial e armazene-o em um repositório de configuração restrito.
As configurações de ativação de token no arquivo local.json devem estar habilitadas para validação no navegador, na caixa de entrada e na caixa de saída.
Configurar uma instalação do Linux
Para uma instalação Linux baseada em pacotes, edite o arquivo /etc/onlyoffice/documentserver/local.json. Preserve as configurações existentes: mescle as seguintes chaves ao JSON existente em vez de substituir o arquivo inteiro. O exemplo mostra a estrutura de validação de token e os três locais secretos correspondentes descritos no guia de configuração oficial:
Substitua todos os espaços reservados pelo mesmo valor secreto exato. Não cole o próprio espaço reservado de exemplo. As opções browser`--secure`, inbox`--secret` e outbox`--secret` são independentes; habilitar apenas uma delas não habilita toda a validação de requisição. A partir da versão 7.2, o JWT está habilitado por padrão, mas verificar explicitamente essas configurações ajuda ao auditar uma configuração existente ou alinhar o comportamento entre nós. Para versões anteriores à 7.2, o guia oficial recomenda habilitar todas as três opções.
Mantenha as strings de segredo da caixa de entrada, da caixa de saída e da sessão idênticas para que as verificações JWT do servidor usem a mesma chave.
Valide a sintaxe JSON antes de reiniciar. Em seguida, reinicie os serviços do Servidor de Documentos para que as alterações sejam carregadas.
Execute o comando com uma conta que tenha permissão para gerenciar serviços do sistema. No Windows, o arquivo de configuração é %ProgramFiles%\ONLYOFFICE\DocumentServer\config\local.json; use as instruções de reinicialização do Windows no guia oficial em vez do comando do Linux.
Configure o Docker sem editar a configuração gerada.
Para a imagem Docker oficial do Document Server, defina o JWT por meio de variáveis de ambiente do contêiner. O guia oficial alerta que a alteração manual do JWT gerado local.jsonpode ser desfeita ao reiniciar o contêiner. Defina JWT_ENABLED=trueo JWT JWT_SECRETno comando de criação do contêiner ou no serviço Compose e, em seguida, recrie o contêiner para que as alterações entrem em vigor. Mantenha o segredo em um arquivo de ambiente protegido ou em um gerenciador de segredos e restrinja as permissões desse arquivo; evite adicioná-lo ao controle de versão.
Defina ONLYOFFICE_JWT_SECRETo ambiente de implantação ou .envo arquivo protegido. Fixe uma tag de imagem testada em vez de depender de `<tag>` latest, e verifique a documentação da tag exata que você está usando. Após alterar os valores do ambiente, recrie o contêiner usando seu processo de implantação normal. Uma simples reinicialização pode manter o ambiente antigo.
Para o Docker, passe as configurações do JWT ao criar o contêiner e mantenha o segredo fora do arquivo Compose.
Atualize o conector e proteja o segredo.
Abra as configurações de integração na plataforma que se conecta ao ONLYOFFICE Docs, como o Nextcloud ou outro conector compatível. Insira a mesma chave secreta JWT no campo de chave secreta e salve. Confirme também a URL do servidor de documentos configurada e, se o conector a disponibilizar, o cabeçalho de autorização. O cabeçalho padrão no ONLYOFFICE Docs é `<header>` Authorization; altere-o somente se ambas as partes estiverem configuradas para usar a mesma alternativa.
Uma incompatibilidade de segredo geralmente se manifesta como um erro de token inválido ou de autorização ao abrir ou salvar um documento. Essa incompatibilidade também pode ocorrer quando apenas um nó do Docs, por trás de um balanceador de carga, foi atualizado. Se você opera vários nós, sincronize as mesmas configurações de segredo e token em todos eles antes de enviar tráfego para esses nós. Implemente as alterações em uma janela controlada: atualize o Docs e o conector simultaneamente e esteja ciente de que as sessões de edição existentes ou as solicitações assinadas com o valor antigo podem falhar durante a transição.
Qualquer pessoa que consiga ler o segredo pode criar tokens que o servidor pode aceitar. Limite o acesso a arquivos de configuração e variáveis de implantação, use transporte criptografado para a conexão entre o conector e o Docs e rotacione o segredo caso ele tenha sido exposto. A rotação exige a atualização de todos os nós do Docs e do conector para o novo valor; não deixe credenciais antigas em arquivos ou logs.
Habilite a verificação JWT no conector e insira o mesmo segredo configurado no Servidor de Documentos.
Verifique a configuração
Confirme se o serviço ou contêiner Docs está em execução após a alteração da configuração.
Para uma implantação do Docker, execute o comando sudo docker exec <container_name> sudo documentserver-jwt-status.shpara inspecionar o status do JWT. Use o nome real do contêiner. Esta ferramenta auxiliar está documentada para o Docker; não assuma que ela esteja disponível em todas as instalações de pacotes.
Abra um documento através da plataforma conectada, faça uma pequena edição inofensiva e salve-o. Confirme se o editor abre e se a plataforma recebeu a alteração salva.
Se a autenticação falhar, compare o segredo do servidor e do conector caractere por caractere, verifique se todas as opções relevantes do token estão ativadas e verifique a configuração do cabeçalho da solicitação.