O que é JWT e como essa tecnologia protege seus documentos
Existem maneiras de proteger os arquivos ativamente – usando criptografia, marcas d’água, permissões de acesso restritivas. Mas a segurança dos documentos não termina aí. Leia este post para descobrir o JWT, uma importante ferramenta de proteção de acesso habilitada por padrão no ONLYOFFICE desde a versão 7.2.
O que é JWT
JSON Web Token é um padrão aberto para troca segura de informações online usado principalmente para dois propósitos – autorização e transferência de dados.
Um objeto JSON compacto contém as informações de autenticação e fornece a capacidade de verificar usuários legítimos do serviço, quando aplicado em aplicativos da web. Em poucas palavras, isso ajuda o aplicativo a confirmar que o remetente das informações é quem eles afirmam ser.
JWT é um objeto autocontido na forma de uma string que consiste em três partes: cabeçalho, carga útil e assinatura. O cabeçalho contém as informações sobre o token e como a assinatura é gerada, a carga útil contém as declarações sobre o usuário necessárias para conceder permissão de acesso e a assinatura valida o usuário.
O token pode ser assinado com uma chave secreta que ajuda a validar a origem dos dados transferidos.
Como o ONLYOFFICE usa tokens de segurança
No ONLYOFFICE, o JWT protege o fluxo de dados entre o editor e o usuário. Ele ajuda a verificar os usuários que entram nas sessões de edição no Documentos e tentam realizar determinadas ações nos documentos. Para cada solicitação HTTP de e para o servidor de documentos ONLYOFFICE, um token é gerado e adicionado aos parâmetros.
Aqui, diferentes JWTs são gerados para diferentes ações do usuário. Embora os tokens sejam assinados com o mesmo segredo em cada caso, as informações que ajudam a autorizar a entrada são diferentes. Por exemplo, um token separado é criado para abrir o editor, para inserir uma imagem no arquivo, para abrir o histórico de versões do documento, etc.
Por exemplo, para adicionar uma imagem PNG ao arquivo hospedado em www.example.com, os seguintes parâmetros serão incluídos no token:
{
"fileType": "png",
"url": "https://example.com/url-to-example-image.png"
}
E é assim que o token de amostra ficará:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJmaWxlVHlwZSI6InBuZyIsInVybCI6Imh0dHBzOi8vZXhhbXBsZS5jb20vdXJsLXRvLWV4YW1wbGUtaW1hZ2UucG5nIn0.FXuC3GUvPq3japwyzo4i-utUe3g1rfSDt1ytuK_VyCc
Para assinar o JWT, um segredo personalizado é usado em cada serviço de compartilhamento em que o ONLYOFFICE Docs está integrado.
Onde recuperar a chave secreta
Nas versões anteriores do ONLYOFFICE Docs, o segredo JWT precisava ser gerado por um administrador do serviço de host (ou seja, Nextcloud) e enviado ao ONLYOFFICE Document Server manualmente por meio de configurações para habilitá-lo.
A partir da versão 7.2 o JWT é habilitado por padrão. Um segredo aleatório é gerado automaticamente e só precisa ser adicionado ao lado do aplicativo host. Você pode obter o segredo JWT padrão e substituí-lo por uma chave personalizada, se necessário.
Observação: se você já estiver usando o ONLYOFFICE Docs com JWT, a chave original permanecerá em sua configuração. A exceção é a instalação do Docker: se no Document Server instalado as variáveis env não estiverem definidas ou os parâmetros JWT não estiverem definidos, um segredo aleatório será gerado após a atualização.
Instalação de servidores Linux e Windows
Você pode obter o segredo JWT padrão do arquivo local.json usando o seguinte caminho:
Para Linux: /etc/onlyoffice/documentserver/local.json
Para Windows: %ProgramFiles%\ONLYOFFICE\DocumentServer\config\local.json
Você pode encontrar o segredo em services.CoAuthoring.secret.browser.string parameter.
Instalação do Docker
Se o ONLYOFFICE Docs estiver instalado usando o Docker, execute o script a seguir para obter o segredo:
sudo docker exec f00ad6e66a40 /var/www/onlyoffice/documentserver/npm/json -f /etc/onlyoffice/documentserver/local.json 'services.CoAuthoring.secret.session.string'
Para substituir o segredo padrão por uma chave personalizada, leia a documentação.
Instruções individuais para cada método de instalação também estarão disponíveis no página de lançamento do ONLYOFFICE Docs depois da instalação.
Onde o JWT está disponível?
O JWT é compatível com quase todos os aplicativos de integração oficiais do ONLYOFFICE:
- Nextcloud
- ownCloud
- Alfresco
- Moodle
- Mattermost
- Chamilo
- HumHub
- Confluence
- Plone
- Strapi
- Liferay
- Jira
- Nuxeo
- Redmine
- WordPress
Você pode navegar por todas as integrações disponíveis em nosso website e encontre guias de configuração de tokens nas respectivas páginas do GitHub.
Se você deseja criar um aplicativo de integração do ONLYOFFICE para seu próprio aplicativo, é possível adicionar suporte para os tokens de segurança usando nosso guia da API.
Links úteis
Verifique o guia de API para adicionar suporte a JWT no aplicativo de integração.
Navegue pela lista de integrações disoníveis.
Leia mais sobre segurança no ONLYOFFICE.
Crie sua conta gratuita no ONLYOFFICE
Visualize, edite e colabore em documentos, planilhas, slides, formulários e arquivos PDF online.