热搜词
发表于 2023-9-20 16:43:50 | 显示全部楼层 |阅读模式
centos7,用docker部署,seafile+onlyoffice,onlyoffice7.2版默认启用jwt,seafile打开doc文档报令牌未正确形成。

onlyoffice中local.json的“services-CoAuthoring-token-inbox,outbox,browser”都改为false后重启还是会提示"令牌未正确形成"。并且重启后以上三个都会被自动更新为true。
还有什么可以解决的办法吗?

ONLYOFFICE 编辑器使用 Json Web Token (JWT),保护文档免遭未经授权的访问。在文档编辑器被初始化、以及在内部 ONLYOFFICE 文档服务之间交换命令时,这个令牌会被添加到配置中。会通过密钥对JWT进行签名,并根据向 ONLYOFFICE 文档发出的请求来验证该令牌。
自 ONLYOFFICE 文档 v.7.2 起,默认启用 JWT,并自动生成密钥。您可以随时按需更改相关参数。
为保护您的文档,您需要启用令牌验证并在 ONLYOFFICE 文档配置文件中指定您自己的密钥,然后在连接器设置中指定相同的密钥。

针对 Linux/ Windows
配置 ONLYOFFICE 文档1.通过任意可用的文本编辑器打开 local.json 文件。
针对 Linux - /etc/onlyoffice/documentserver/local.json
针对 Windows - %ProgramFiles%\ONLYOFFICE\DocumentServer\config\local.json

2.通过将三个部分中的 false 值更改为 true 来启用令牌验证:
services.CoAuthoring.token.enable.browser
services.CoAuthoring.token.enable.request.inbox
services.CoAuthoring.token.enable.request.outbox

3.通过将三部分中的密钥值替换为您自己的文本字符串,来指定您自己的密钥。密钥必须是相同的。
services.CoAuthoring.secret.inbox.string
services.CoAuthoring.secret.outbox.string
services.CoAuthoring.secret.session.string
  1.   "services": {
  2.     "CoAuthoring": {
  3.       "token": {
  4.         "enable": {
  5.           "request": {
  6.             "inbox": true,
  7.             "outbox": true
  8.           },
  9.           "browser": true
  10.         }
  11.       },
  12.       "secret": {
  13.         "inbox": {
  14.           "string": "yoursecret"
  15.         },
  16.         "outbox": {
  17.           "string": "yoursecret"
  18.         },
  19.         "session": {
  20.           "string": "yoursecret"
  21.         }
  22.       }
  23.     }
  24.   }
  25. }
复制代码
1.保存更改。
2.重启服务,以使配置更改生效。
  systemctl restart ds-converter ds-docservice ds-example ds-metrics

针对
Docker
使用环境变量
如果您在 /etc/onlyoffice/documentserver/local.json 中更改自动生成的密钥或手动禁用 JWT,JWT 会被再次启用,服务器重启时也会重新生成密钥。为了避免此问题,请在 docker run 命令中使用环境变量。
如要更改密钥,请在 -e JWT_SECRET=my_jwt_secret 中指定您自己的密钥值。如要禁用 JWT,请使用 -e JWT_ENABLED=false。

参数说明:
--restart=always表示每次开机,只要当docker被设置为开机启动,此onlyoffice就会自动运行
-d 表示后台运行
-i:  交互式操作。
--name:为容器起一个名字
-t:  终端。
-p 8000:80  宿主机的8000端口映射到容器的80端口
-e JWT_ENABLED=false 开启密钥验证,默认开启。v7.2版以后功能。Dzzoffice必需要关闭。
-e JWT_SECRET=65321 设置密钥,如果没有开启密钥验证,无需设置此参数。

03.png

全部评论1
灰儿 发表于 2023-9-20 18:00:21 | 显示全部楼层
http://www.admin365.cn/thread-112450-1-1.html  宝塔面板docker安装onlyoffice用于office文件预览
http://www.admin365.cn/thread-112451-1-1.html  NextCloud中设置OnlyOffice提示文档服务内部发生异常: Invalid token
http://www.admin365.cn/thread-112495-1-1.html  为 OnlyOffice 关闭密钥(JWT令牌)
回复

使用道具 举报

回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|小黑屋|管理员之家 ( 苏ICP备2023053177号-2 )

GMT+8, 2024-12-22 23:15 , Processed in 0.188387 second(s), 25 queries .

Powered by Discuz! X3.5

Cpoyright © 2001-2024 Discuz! Team