Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

重构前端权限相关代码 #2672

Closed
LZS911 opened this issue Oct 11, 2024 · 29 comments
Closed

重构前端权限相关代码 #2672

LZS911 opened this issue Oct 11, 2024 · 29 comments
Assignees
Labels
publish-rel verified the issue all pr is verified
Milestone

Comments

@LZS911
Copy link
Collaborator

LZS911 commented Oct 11, 2024

需求描述(Describe)

实现方案

变更影响面

受影响的模块或功能

外部引用的潜在问题或风险

版本兼容性

测试建议

@LZS911
Copy link
Collaborator Author

LZS911 commented Oct 14, 2024

数据源页面:

  • 批量导入数据源:当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )
  • 添加数据源: 当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )
  • 编辑:当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )
  • 删除:当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )
  • 测试数据源连通性:无
  • 为数据源开启扫描任务:当前项目非冻结状态 && ( admin || 全局管理员 || 当前项目管理员 || 当前用户对当前数据源拥有创建/编辑扫描任务权限 )

@LZS911
Copy link
Collaborator Author

LZS911 commented Oct 14, 2024

用户中心:
页面权限:

  • admin || 全局管理 || 全局浏览
  1. 用户列表
    • 添加用户: admin || 全局管理
    • 管理:admin || 全局管理
      tips:
      - admin 用户仅 admin 能进行编辑。
      - 若被操作列用户拥有全局管理权限,仅admin 用户以及自身用户能进行编辑
    • 删除:admin || 全局管理
      tips:
      - admin 用户无法被删除
      - 若被操作列用户拥有全局管理权限,仅 admin 用户能进行删除
  2. 角色列表
    • 添加角色:admin || 全局管理
    • 编辑:admin || 全局管理
    • 删除:admin || 全局管理

@LZS911
Copy link
Collaborator Author

LZS911 commented Oct 14, 2024

数据源管理:
页面权限:

  • 全局数据源: admin || 全局管理 || 全局浏览 || 任意某个项目的管理员
  • 外部数据源同步: admin || 全局管理 || 全局浏览
  1. 全局数据源
    • 批量导入数据源:admin || 全局管理 || 任意某个项目的管理员
    • 添加数据源: admin || 全局管理 || 任意某个项目的管理员
    • 编辑:admin || 全局管理 || 任意某个项目的管理员
    • 删除:admin || 全局管理 || 任意某个项目的管理员
    • 测试数据源连通性: 无
  2. 外部数据源同步
    • 添加同步任务:admin || 全局管理
    • 编辑:admin || 全局管理
    • 同步:admin || 全局管理
    • 删除:admin || 全局管理

@LZS911
Copy link
Collaborator Author

LZS911 commented Oct 14, 2024

报表统计:
页面权限:

  • admin || 全局管理 || 全局浏览

@LZS911
Copy link
Collaborator Author

LZS911 commented Oct 14, 2024

系统设置:
页面权限:

  • admin || 全局管理 || 全局浏览

操作权限:

  1. 消息推送
    • 启用邮件推送: admin || 全局管理
    • 是否启用微信通知: admin || 全局管理
    • 是否启用飞书推送: admin || 全局管理
    • 是否开启Webhook通知: admin || 全局管理
  2. 流程对接
    • 启用钉钉审批: admin || 全局管理
    • 启用飞书审批: admin || 全局管理
    • 启用企业微信审批: admin || 全局管理
  3. 登录对接
    • 是否启用LDAP服务: admin || 全局管理
    • 是否启用OAuth2.0登录: admin || 全局管理
  4. 全局配置
    • 操作记录过期时间(小时): admin || 全局管理
    • CB工作台操作审计过期时间(小时): admin || 全局管理
    • URL地址前缀: admin || 全局管理
  5. 许可证
    • 收集许可证信息:admin || 全局管理
    • 导入许可证信息:admin || 全局管理
  6. 个性化设置
    • 个性化标题:admin || 全局管理
    • 个性化Logo:admin || 全局管理

@LZS911
Copy link
Collaborator Author

LZS911 commented Oct 14, 2024

SQLE操作记录:
页面权限:

  • admin || 全局管理 || 全局浏览

@LZS911
Copy link
Collaborator Author

LZS911 commented Oct 14, 2024

智能调优:
页面权限:

  • v1/system/module_status?module_name=sql_optimization 请求返回为 { is_supported: true }

@LZS911
Copy link
Collaborator Author

LZS911 commented Oct 15, 2024

规则管理:
页面权限:

  • 公共规则模板列表: admin || 全局管理 || 全局浏览
  • 自定义规则:admin || 全局管理 || 全局浏览
  1. 公共规则模板列表
    • 导入规则模板:admin || 全局管理
    • 创建规则模板:admin || 全局管理
    • 编辑:admin || 全局管理
    • 删除:admin || 全局管理
    • 克隆:admin || 全局管理
    • 导出 无
  2. 自定义规则
    • 新建:admin || 全局管理
    • 编辑:admin || 全局管理
    • 删除:admin || 全局管理

@LZS911
Copy link
Collaborator Author

LZS911 commented Oct 16, 2024

SQL 工单:
页面权限: 无

操作权限:

  1. 工单列表
  • 导出工单:无
  • 创建工单:当前项目非冻结状态。通过筛选创建工单页面的可选择数据源来进行权限控制。权限来源:成员与权限页面。
  • 创建工单-sql审核列表:添加为审核SQL例外:当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )
  1. 工单详情 Header 操作按钮:按钮权限皆为项目非冻结状态,且操作按钮省略工单状态以及工单待操作人说明
  • 关闭工单:无
  • 上线到其他实例:项目管理员 || 拥有任意数据源创建工单的操作权限
  • 全部驳回:当前工单数据源的 驳回/审批工单权限
  • 审核通过:当前工单数据源的 驳回/审批工单权限
  • 批量立即上线:当前工单数据源的上线工单权限
  • 标记为人工上线:当前工单数据源的上线工单权限
  • 中止上线:无
  • 刷新工单:无
  1. 工单详情概览操作列
  • 中止上线
  • 立即上线
  • 定时上线
  • 取消定时上线

Tips:由于 全部驳回、审核通过、批量立即上线、标记为人工上线、立即上线、定时上线 按钮判断权限为当前工单对应的数据源 ID,但是当前工单信息中仅有工单名称,需要额外获取。故考虑以上四个按钮的权限仅判断项目是否冻结,操作权限保持原状,通过后端判断。

@zzyangh
Copy link

zzyangh commented Oct 25, 2024

SQL管控:
页面权限:无

操作权限:

  • 指派负责人: 当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )
  • 变更状态:当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )
  • 变更优先级:当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )
  • 设置为管控SQL例外:当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )
  • 设置为审核SQL例外:当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )
  • 批量指派:当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )
  • 批量解决: 当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )
  • 批量忽略:当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )

两个特殊权限场景

  • 表格操作列width(根据权限和语言进行适配):当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )
  • 表格备注列(根据是否有权限渲染不同组件):当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )

@zzyangh
Copy link

zzyangh commented Oct 25, 2024

SQL管控例外:
页面权限:无

操作权限:

  • 添加:当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )
  • 编辑:当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )
  • 删除:当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )

@LZS911
Copy link
Collaborator Author

LZS911 commented Oct 28, 2024

SQL工作台
页面权限:无

操作权限:

  • 打开SQL工作台:无
  • 导出:无
  • 添加为审核SQL例外:当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )

@zzyangh
Copy link

zzyangh commented Oct 28, 2024

审核SQL例外
页面权限: 无

操作权限:

  • 添加:当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )
  • 编辑:当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )
  • 删除:当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )

@zzyangh
Copy link

zzyangh commented Oct 28, 2024

审批流程模板

页面权限:无

操作权限:

  • 修改当前审批流程模板:当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )

@zzyangh
Copy link

zzyangh commented Oct 29, 2024

审核规则模板
页面权限:无

操作权限:

  • 导入规则模板:当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )
  • 创建规则模板: 当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )
  • 编辑: 当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )
  • 删除: 当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )
  • 克隆: admin || 全局管理 || 当前项目管理员
  • 导出: admin || 全局管理 || 当前项目管理员

@zzyangh
Copy link

zzyangh commented Oct 29, 2024

知识库:
页面权限:无

操作权限:

  • 编辑: admin || 全局管理

@zzyangh
Copy link

zzyangh commented Oct 29, 2024

推送规则

页面权限:无

操作权限:

  • 工单变更推送开关:admin || 全局管理 || 当前项目管理员
  • SQL管控问题推送开关:admin || 全局管理 || 当前项目管理员

@zzyangh
Copy link

zzyangh commented Oct 29, 2024

查看规则

页面权限:无

操作权限:

  • 创建规则模板:筛选项目非冻结状态 && ( admin || 全局管理 || 筛选项目管理员 )

@zzyangh
Copy link

zzyangh commented Oct 29, 2024

成员与权限管理

页面权限:无

操作权限:

  • 添加成员:当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )

  • 编辑成员:当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )

  • 删除成员:当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )

  • 添加成员组:当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )

  • 编辑成员组:当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )

  • 删除成员组:当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )

@zzyangh
Copy link

zzyangh commented Oct 30, 2024

IDE审核:

页面权限:无

操作权限:

  • 添加为审核SQL例外:当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )

@zzyangh
Copy link

zzyangh commented Oct 31, 2024

数据导出

页面权限: 无

操作权限:

  • 批量关闭(包含表格是否可选权限): admin || 全局管理 || 当前项目管理员
  • 添加为审核SQL例外:当前项目非冻结状态 && ( admin || 全局管理 || 当前项目管理员 )

@zzyangh
Copy link

zzyangh commented Nov 1, 2024

版本管理:

页面权限:无

操作权限:

  • 创建: admin || 全局管理 || 当前项目管理员
  • 编辑:admin || 全局管理 || 当前项目管理员
  • 删除: admin || 全局管理 || 当前项目管理员
  • 锁定:admin || 全局管理 || 当前项目管理员
    - [ ] 发布版本:admin || 全局管理 || 当前项目管理员 || 当前数据源的创建工单权

@LZS911
Copy link
Collaborator Author

LZS911 commented Nov 4, 2024

项目列表:

页面权限:无

操作权限:

  • 批量导入数据源: admin || 全局管理
  • 创建项目:admin || 全局管理 || 拥有创建项目权限的用户
  • 导出:admin || 全局管理 || 拥有创建项目权限的用户
  • 导入:admin || 全局管理 || 拥有创建项目权限的用户
  • 编辑:admin || 全局管理 || 项目管理员
  • 删除:admin || 全局管理 || 项目管理员
  • 启用:admin || 全局管理 || 项目管理员
  • 冻结:admin || 全局管理 || 项目管理员

@LZS911
Copy link
Collaborator Author

LZS911 commented Nov 4, 2024

SQL管控配置:

页面权限:无

所有操作权限前置条件:当前项目非冻结状态

操作权限:

  • 为数据源开启扫描任务:当前项目非冻结状态
  • 编辑:admin || 全局管理 || 项目管理员 || 拥有当前数据源的创建/编辑扫描任务权限
  • 停用:admin || 全局管理 || 项目管理员 || 拥有当前数据源的创建/编辑扫描任务权限
  • 启用:admin || 全局管理 || 项目管理员 || 拥有当前数据源的创建/编辑扫描任务权限
  • 删除:admin || 全局管理 || 项目管理员 || 拥有当前数据源的创建/编辑扫描任务权限

扫描任务详情:

  • 立即审核:admin || 全局管理 || 项目管理员 || 拥有当前数据源的创建/编辑扫描任务权限
  • 启用:admin || 全局管理 || 项目管理员 || 拥有当前数据源的创建/编辑扫描任务权限
  • 停用:admin || 全局管理 || 项目管理员 || 拥有当前数据源的创建/编辑扫描任务权限
  • 删除:admin || 全局管理 || 项目管理员 || 拥有当前数据源的创建/编辑扫描任务权限

@taolx0
Copy link
Collaborator

taolx0 commented Nov 7, 2024

  • SQL工单,快捷审核页面不符合预期,待修复后测试

拥有全局管理权限用户u2

pri1
u2对admin用户编辑按钮置灰
pri2
u2用户能创建数据源
pri3
u2用户不能编辑拥有平台权限用户
pri4
u2用户创建数据源成功
pri5

拥有全局统计权限用户u3

pri7
能查看全平台页面,但是不能编辑符合预期
pri8
pri9
pri10
pri11

@taolx0 taolx0 added the verified the issue all pr is verified label Nov 7, 2024
@zzyangh
Copy link

zzyangh commented Nov 8, 2024

快捷审核:

页面权限:无

操作权限:

  • 创建审核:项目未冻结

@zzyangh
Copy link

zzyangh commented Nov 8, 2024

Home

页面权限:无

操作权限:

  • 根据是否是admin或全局管理权限展示不同操作步骤

@zzyangh
Copy link

zzyangh commented Nov 8, 2024

系统公告

页面权限:无

操作权限:

  • 编辑系统公告:admin || 全局管理

@zzyangh
Copy link

zzyangh commented Nov 8, 2024

项目概览:

页面权限: 无

操作权限:

  • 创建工单:同SQL工单创建权限

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
publish-rel verified the issue all pr is verified
Projects
None yet
Development

No branches or pull requests

4 participants