一种文档权限管理方法、装置及存储介质与流程
本发明涉及文档权限管理,具体涉及一种文档权限管理方法、装置及存储介质。
背景技术:
1、随着企业数字化转型的深入,团队协作软件和文档管理系统已成为企业日常运营的核心基础设施。在多团队、多角色的复杂组织架构下,如何高效、安全地管理文档的访问权限,成为文档管理系统面临的关键技术挑战。
2、目前,主流的文档权限管理方案主要基于传统的rbac(role-based accesscontrol,基于角色的访问控制)模型或其变体实现。例如,cn117574397a公开提供了基于资源的用户权限管理方法及系统,从用户或者角色管理中对文件进行授权,通过赋权,形成权限的数据交换格式串,使用户或者角色在某个资源的某个操作上具有具体的权限,且通过用户权限和角色权限的结合,在权限上取并集,若出现用户权限和角色权限冲突,按照权限的优先级进行取舍,使用户权限的优先级大于角色权限,该方法通过角色这一中间层实现了用户与权限的解耦,在一定程度上简化了权限管理工作。
3、然而,现有技术方案在应用于多团队协作场景时,存在以下显著不足:
4、第一,权限配置复杂度高。在涉及多个团队共同访问和管理同一批文档的场景下,现有方案通常需要在角色层面为每个团队分别配置不同的权限集合,导致角色数量急剧膨胀,即角色爆炸问题。例如,一个拥有10个团队、每个团队5种角色的组织,理论上需要创建50个不同的角色实体,配置工作量呈指数级增长。
5、第二,权限蔓延与权限孤岛并存。现有方案缺乏有效的团队隔离机制。一方面,当用户在不同团队间切换时,其权限往往无法自动适配,容易出现越权访问即权限蔓延的安全风险;另一方面,当用户需要跨团队协作时,又因权限配置的僵化而形成权限孤岛,无法灵活授予临时访问权限。
6、第三,文档级权限控制粒度粗糙。现有方案大多停留在文档整体可见/不可见的二元控制层面,缺乏对同一文档内不同操作如查看、编辑、删除、分享、导出等的精细化权限区分,难以满足企业对文档安全管理的实际需求。
7、第四,新用户加入团队的权限配置滞后。当新成员加入团队时,现有方案需要管理员手动为其分配角色和权限,配置周期长,且容易因人为疏忽导致权限配置错误。
技术实现思路
1、本发明的目的在于克服上述现有技术不足,提供一种文档权限管理方法、装置及存储介质,旨在解决多团队协作场景下文档权限配置复杂、权限管理效率低的技术问题。
2、为实现上述目的,第一方面,本技术提供一种如下技术方案:
3、一种文档权限管理方法,包括:
4、响应于第一用户对目标文档的访问请求,获取所述第一用户的团队归属信息和角色信息;
5、根据所述团队归属信息确定所述第一用户所属的目标团队,并获取所述目标团队的团队权限配置信息;
6、根据所述角色信息从所述团队权限配置信息中确定所述第一用户对应的角色权限集合;
7、获取所述目标文档的文档权限标签,所述文档权限标签包括可见团队列表和操作权限矩阵;所述文档权限标签还包括文档所属团队标识;所述根据所述第一用户的所述角色权限集合与所述文档权限标签进行匹配,确定所述第一用户对所述目标文档的访问权限,包括:
8、判断所述目标团队是否属于所述可见团队列表;
9、若所述目标团队不属于所述可见团队列表,则判定所述第一用户对所述目标文档无访问权限;
10、若所述目标团队属于所述可见团队列表,则根据所述角色权限集合与所述操作权限矩阵进行逐项匹配,确定所述第一用户对所述目标文档的至少一个操作权限。
11、根据所述第一用户的所述角色权限集合与所述文档权限标签进行匹配,确定所述第一用户对所述目标文档的访问权限。
12、进一步地,所述根据所述角色权限集合与所述操作权限矩阵进行逐项匹配,确定所述第一用户对所述目标文档的至少一个操作权限,包括:
13、遍历所述操作权限矩阵中的每一个权限项;
14、对于每一个权限项,判断所述角色权限集合中是否存在与该权限项相匹配的权限标识;
15、若存在匹配,则授予所述第一用户该权限项对应的操作权限;
16、若不存在匹配,则拒绝所述第一用户该权限项对应的操作权限。
17、进一步地,所述团队权限配置信息通过以下方式生成:
18、响应于团队管理员的角色创建操作,获取角色名称和为该角色分配的至少一个菜单权限;
19、将所述角色名称与所述至少一个菜单权限关联存储,生成角色实体;
20、响应于团队管理员的成员添加操作,获取成员标识和为该成员分配的目标角色;
21、将所述成员标识与所述目标角色关联存储,生成成员-角色映射关系。
22、进一步地,所述方法还包括:
23、响应于团队管理员对所述目标角色的编辑操作,获取更新后的角色权限配置;
24、根据所述更新后的角色权限配置更新所述目标角色对应的角色权限集合;
25、基于所述成员-角色映射关系,将更新后的所述角色权限集合同步应用于绑定所述目标角色的所有成员。
26、进一步地,所述方法还包括:
27、响应于第二用户的团队切换操作,获取所述第二用户选中的目标切换团队;
28、将所述第二用户的当前团队上下文切换至所述目标切换团队;
29、刷新所述第二用户的角色权限集合为所述目标切换团队对应的角色权限集合;
30、更新界面显示数据为所述目标切换团队内的相关数据。
31、进一步地,所述方法还包括:
32、响应于团队管理员对未注册用户的邀请操作,生成包含团队关联信息的邀请链接;
33、响应于所述未注册用户通过所述邀请链接完成注册,自动将所述未注册用户与所述目标团队进行关联,并根据所述邀请操作中预设的角色信息为所述未注册用户分配角色权限。
34、进一步地,所述获取所述第一用户的团队归属信息和角色信息,包括:
35、从所述第一用户的登录令牌中解析出用户标识;
36、根据所述用户标识查询用户-团队映射表,获取所述第一用户关联的所有团队标识及当前选中团队标识;
37、根据所述用户标识和所述当前选中团队标识查询成员-角色映射表,获取所述第一用户在所述目标团队中的角色标识。
38、第二方面,本发明还提供一种文档权限管理装置,包括:
39、一个或多个处理器;以及
40、存储装置,用于存储一个或多个程序;
41、当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现所述的文档权限管理方法。
42、第三方面,本发明另提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述的文档权限管理方法。
43、本发明的核心在于构建了团队-角色-文档三级解耦的权限管理架构,将传统的用户-角色-权限二维模型扩展为用户-团队-角色-文档权限标签四维匹配模型。
44、具体而言,本发明将权限管理划分为三个独立的配置维度:
45、团队维度:每个团队独立维护自己的角色体系和成员关系,团队之间在权限配置层面相互隔离。这一设计解决了角色爆炸问题,即同一角色名称如“管理员”在不同团队中可以具有完全不同的权限配置,无需为每个团队创建不同的角色实体。
46、角色维度:角色作为团队内部的权限模板,定义了某一类成员在该团队内拥有的基础权限集合。角色与团队绑定,角色的权限配置仅在该团队范围内生效。
47、文档维度:每个文档携带独立的权限标签,该标签包含“可见团队列表”即哪些团队的成员可以看到该文)和“操作权限矩阵”即不同角色对该文档可执行的具体操作。文档权限标签独立于团队和角色进行配置,实现了文档级权限的精细化管理。
48、当用户请求访问某个文档时,系统按照团队过滤→角色匹配→权限标签校验的三级匹配流程进行权限判定:
49、第一级团队过滤:判断用户所属团队是否在文档的可见团队列表中,若不在则直接拒绝访问,实现了团队级别的安全隔离;
50、第二级角色匹配:在通过团队过滤后,获取用户在该团队中的角色权限集合;
51、第三级权限标签校验:将用户的角色权限集合与文档的操作权限矩阵进行逐项匹配,确定用户对文档的具体操作权限。
52、三级匹配机制实现了权限判定的时间复杂度从o(n×m),而传统方案中n为用户数、m为文档数,将其优化为o(1)级别的常量级匹配,在大规模团队协作场景下显著提升了权限判定的效率。
53、与现有技术相比,本发明具有以下有益效果:
54、1. 大幅降低权限配置复杂度。通过团队维度的引入和角色与团队的绑定,使得同一角色名称可在不同团队中复用且具有不同的权限含义,有效避免了角色爆炸问题。经测试,在10个团队、每个团队5种角色的场景下,本发明的角色配置数量为10个,每个团队1套角色体系,而传统方案需要50个角色实体,配置工作量降低约80%。
55、2. 实现团队级别的权限隔离与灵活切换。通过“可见团队列表”机制,实现了文档在不同团队间的选择性可见,既防止了权限蔓延,即用户只能看到其所属团队可见的文档,又通过团队切换功能实现了用户在不同团队间的灵活跳转,权限随团队上下文自动适配。
56、3. 实现文档级的精细化权限控制。通过“操作权限矩阵”机制,将文档权限从传统的“可见/不可见”二元控制扩展为对查看、编辑、删除、分享、导出等多种操作的独立控制,满足了企业对文档安全管理的精细化需求。
57、4. 实现新用户的自动权限绑定。通过邀请链接机制和预设角色配置,新用户完成注册后即可自动关联团队并获得相应角色权限,无需管理员事后手动配置,大幅提升了团队扩展的效率。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com