[alibaba/nacos]可否细化权限的粒度

2024-07-18 196 views
0

当前权限最低级为命名空间 希望可以改成最低支持dataID. 现在prod命名控环境中 哪怕一个服务被黑了,他直接可以获取其他所有服务的配置,这样是不合理的,也是非常危险的,我们现在适配方法是新增几个命令空间 比如有给用户打钱的就加个 prod-pay,但这样命名空间就失去了原本的意义 建议: permissions表现在有 role,resource,action 3个字段 我觉得可以去掉resource字段 另外新增4个字段 这样权限粒度就全覆盖了 当资源类型为data时 ns和group必填 当资源类型为group时 ns必填

resource_type : varchar(16) [namespace,group,data] // 兼容旧版本的话可以默认设置为namespace ns: varchar(50) 命名空间 group_id: varchar(50) 群组id data_id: varchar(50) 数据id

回答

3

权限这么大的问题 就没人关心吗 最低授权粒度 命名空间 等于一个命名空间下的所有资源都是共享的,我是一点都不能忍受 不知道为什么这么多人不在乎

9

权限控制确实太粗了,我的想法和你差不多,从安全角度看确实应该将权限分级别

0

看了一下相关代码 我的想法是: 1.前端在添加权限的时候,增加一个选择框,选择权限级别,如果选择group,则提交的时候拼接resouces字段可以带上group,比如:user_a_2:group1:* . 2.管理后台查询的时候,需要自动判断用户对该命名空间的权限,比如用户是没有输入条件,查命名空间下所有数据,后台可以判断用户的权限级别自动拼接查询条件(group,dataid),如果用户输入了group或者dataid则走之前的authfilter逻辑判断即可

5

相比目前粗略的权限设计,我觉得至少在命名空间下,对应于不同的角色和用户应该还是能控制比较好;其次,对每个空间下具体的dataid进行细化分解。不然比如配置生产和测试,对应不同的开发或维护人员,而且都是需要修改调整的,误操作或未修改空间导致修改配置错误,带来的生产事故就是灾难性的!

5

我们现在就遇到这个问题了

7

558个issue还没处理 可能他们重心不在这了