nonepkg / plugin-manager

Premium Nonebot Plugin Manager base on import hook
MIT License
73 stars 5 forks source link

某会话已经在配置中写入了高权限,超级用户再使用 chmod 降低权限没有连带修改机制 #15

Closed Jerry-FaGe closed 2 months ago

Jerry-FaGe commented 2 years ago

举个栗子,a 插件初始权限是 757 ,某群 123456789 开关了一下这个插件,那么配置文件中会存入如下配置

a:
  group:
    123456789: 7
  mode: '757'
  status: true
  user: {}

这时超级用户使用 npm chmod 755 a 修改了全部群的 a 插件权限为 5 ,但是这时群 123456789 的权限并没有连带一起修改,配置如下

a:
  group:
    123456789: 7
  mode: '755'
  status: true
  user: {}

这样在超级用户修改权限之前修改过权限的会话在超级用户修改权限之后就不受全局权限限制了。

Sevenyine commented 1 year ago

出现了同样的问题🥲可以用这个办法绕过我设置的全局000的权限。个人认为可以设置全局默认权限和强制权限,即全局默认权限设置为未设置分群配置下的默认权限,而全局强制权限为忽略分群配置的权限。并且设置全局强制权限为手动给特定开启