需通过五种方式系统化配置权限:一、基于角色的文档权限配置;二、密码保护与编辑限制组合;三、jwt令牌动态签发;四、房间级访问控制隔离;五、审计追踪与权限变更监控。

如果您在使用ONLYOFFICE时希望防止未授权用户查看、修改或下载文档,则需通过系统化配置访问权限策略来实现精准控制。以下是实施该策略的具体操作路径:
一、基于角色的文档权限配置
该方法通过预设角色绑定操作权限,确保不同身份用户仅能执行与其职责匹配的动作,避免越权行为发生。角色定义直接映射至文档级操作能力,适用于组织内多层级人员管理场景。
1、登录ONLYOFFICE协作空间后台管理界面,进入“安全性”板块下的“协作空间访问权限”子项。
2、点击“添加角色”按钮,在弹出窗口中输入角色名称(如“财务专员”、“法务审阅员”)。
3、在权限矩阵中勾选对应功能:对文本文档启用“审阅”、对电子表格启用“自定义筛选”、禁用“下载”与“打印”选项。
4、保存角色配置后,在房间设置中为指定用户分配该角色,权限即时生效。
二、密码保护与编辑限制组合应用
此方式利用双重验证机制,在文档打开环节和编辑环节分别施加约束,既保障内容可见性可控,又防止关键段落被意外覆盖或删除。
1、在文档编辑界面顶部菜单栏选择“文件”→“属性”→“保护文档”。
2、勾选“启用密码保护”,输入主密码并确认;再勾选“限制编辑”,点击“更多选项”展开高级设置。
3、在“例外情况”区域勾选“允许评论”,其余操作(如修订、填写表单)保持禁用状态。
4、点击“应用”后,未输入密码的用户仅能在侧边栏发表评论,无法直接修改正文内容。
三、JWT令牌动态权限签发
通过后端服务生成含权限声明的JSON Web Token,在每次文档加载请求中校验其有效性与作用域,实现运行时细粒度权限裁决。
1、在Java服务中调用JwtGenerator类,构造payload包含字段:documentId、role、allowedActions:["view","comment"]。
2、使用配置文件中定义的outbox密钥签名,设置过期时间为30分钟,启用密钥轮换机制。
3、将生成的JWT嵌入iframe加载URL的token参数,例如:https://docs.example.com/...?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...。
4、ONLYOFFICE Docs服务接收到请求后自动解析token,比对声明权限与当前操作类型,拒绝不匹配请求。
四、房间级访问控制隔离
以房间为最小权限单元,将文档归属至特定逻辑容器,通过对房间成员角色的显式指派,切断跨房间越权访问路径。
1、在协作空间中创建新房间,选择“自定义房间”模板以启用全部权限选项。
2、进入房间设置页,点击“成员”标签,添加目标用户并为其指定角色:“可审阅”、“可评论”或“仅查看”。
3、关闭“允许外部链接共享”开关,确保文档不可通过公开URL被非成员访问。
4、对房间内已有文档右键选择“权限设置”,取消勾选“继承房间权限”,单独为敏感文档启用“禁止复制”与“禁止下载”。
五、审计追踪与权限变更监控
启用操作日志记录功能,持续捕获所有权限相关事件,包括角色分配、密码修改、JWT签发及文档访问尝试,为安全事件回溯提供原始依据。
1、进入“安全性”板块,切换至“审计追踪”子项,开启“记录权限变更”与“记录文档访问”两项日志采集。
2、设置日志保留周期为90天,存储位置指向内部加密日志服务器。
3、在审计列表中筛选关键词“permission”或“access_denied”,定位异常时间点的操作记录。
4、导出CSV格式日志文件,检查字段userId、targetDocumentId、actionType与resultStatus是否符合预期策略。











