-
Notifications
You must be signed in to change notification settings - Fork 123
Open
Description
[任务] 实现管理员管理文档权限的 API,并基于用户组控制编辑权限
[任务分值] 30 分
[背景描述]
- 当前系统中的文档编辑能力缺乏精细化权限控制机制:
- 文档的编辑权限可能默认对较大范围用户开放
- 缺少明确的“管理员 → 用户组 → 文档权限”管理模型
- 无法做到:
- 仅特定用户可以编辑某类文档
- 动态调整编辑权限
- 基于组织结构进行权限管理
[需求描述]
一、目标
- 提供管理员管理文档权限的 API
- 建立“用户组 → 文档编辑权限”的绑定关系
- 确保只有加入指定群组的用户才能编辑对应文档
二、功能需求
- 权限模型设计
引入基础权限模型:
- User(用户)
- Group(用户组)
- Document(文档)
- DocumentPermission(文档权限配置)
- 管理员权限管理 API
新增以下类型 API:
(1)用户组管理
- 创建用户组
- 删除用户组
- 添加用户到用户组
- 从用户组移除用户
(2)文档权限管理
- 设置文档可编辑的用户组列表
- 查询文档当前编辑权限
- 更新文档权限配置
要求:
- 只有管理员角色可调用相关 API
- 所有操作应进行权限校验
[代码标准]
- 所有 PR 提交必须签署
Signed-off-by和 使用GPG签名,即提交代码时(使用git commit命令时)至少使用-s -S两个参数,参考 Contributing Guide; - 所有 PR 提交必须通过
GitHub Actions自动化测试,提交 PR 后请关注GitHub Actions结果; - 代码注释均需要使用英文;
[PR 提交地址] 提交到 mega 仓库的 main 分支 `` 目录;
[开发指导]
- 认领任务参考 r2cn 开源实习计划 - 任务认领与确认;
[导师及邮箱] 请申请此题目的同学使用邮件联系导师,或加入到 R2CN Discord 后在 #p-meta 频道和导师交流。
- Quanyi Ma genedna@gmail.com
- Tianxing Ye yetianxing2014@gmail.com
[备注]
- 认领实习任务的同学,必须完成测试任务和注册流程,请参考: r2cn 开源实习计划 - 测试任务 和 r2cn 开源实习计划 - 学生注册与审核
Reactions are currently unavailable