mindoc-org / mindoc

Golang实现的基于beego框架的接口在线文档管理系统
https://mindoc.com.cn/docs/mindochelp
Apache License 2.0
7.29k stars 1.9k forks source link

[bug]未加入文章团队的用户RoleId默认是0(创始人),导致出现编辑按钮,点击之后又无权限 #534

Closed xiaoqiang closed 1 year ago

xiaoqiang commented 5 years ago

请按照一下格式提交issue,谢谢!

  1. 你当前使用的是哪个版本的 MinDoc(godoc_linux_amd64 version)? v2.0

  2. 你当前使用的是什么操作系统? centos7

  3. 你是如何操作的? 普通用户看别人的文章会出现编辑按钮,然而点进去又提示没有权限

  4. 你期望得到什么结果? 普通用户看别人文章的时候不出现编辑按钮,打印了一下未加入文章团队的RoleId被默认为0(创始人)了

  5. 当前遇到的是什么结果?

lifei6671 commented 5 years ago

是哪个也没的编辑按钮?

xiaoqiang commented 5 years ago
  1. 普通用户A看用户B的文章,用户A不在文章的用户组里面,打印roleid=0;
  2. 文章作者B看自己文章,因为是创始人,打印roleId=0;
  3. 普通用户A加入到用户B写的文章的用户组,用户B添加用户A到用户组,设置文章的某个角色比如观察者,打印roleid为对应的值,观察者roleid=3;
  4. 普通用户A从用户B文章的用户组里面删除,打印roleid=0,回到了第一种情况。

另外建议,权限不和文章绑定,和空间绑定比较好,团队也和空间绑定。参照https://www.yuque.com/

lifei6671 commented 5 years ago

因为最早的时候只有文章,没有空间和团队。所以才和文章绑定了。 这个问题我研究下。

xiaoqiang commented 5 years ago
  1. 空间还是需要权限的,否则大家可以随便发文章到任意空间,后期管理会很混乱,单篇文章权限继承空间权限即可;
  2. 建议任何人都可以创建空间,类似微信群,可以随意拉人,形成团队。创建者可以设置管理员,管理员可以增删成员,增删文章。普通成员只能增删自己的文章,但是默认可以阅读和修改空间内任意文章。应该鼓励参与创作
lifei6671 commented 5 years ago

你弄错方向了。我这个是针对团队内部用的。你说的这个是 https://github.com/TruthHun/BookStack 这个。

xiaoqiang commented 5 years ago

我也是团队内部使用,你发的那个太复杂了。。。

xiaoqiang commented 4 years ago

权限的问题可以早点fix吗?我本地(OSX)编译一直有点问题