【问题标题】:Default user group creation behavior in web2pyweb2py 中的默认用户组创建行为
【发布时间】:2012-03-29 22:13:02
【问题描述】:
在阅读 web2py 手册时,我发现了以下内容:
'一旦注册了新用户,就会创建一个新组来包含
用户。新用户的角色通常是“user_[id]”,其中
[id] 是新创建的id的id。'
这让我想知道为什么 Web2py 会这样做。更具体地说,为什么我们需要创建这么多看似冗余的组,而每个组只包含一个用户?例如,创建一个名为'user_2' 的组只是为了包含ID 为'2' 的用户的目的是什么?
如果不存在特别的理由,是否有任何方法可以禁用自动为单个用户创建唯一组的默认行为,以便可以单独创建更有意义的组?谢谢。
【问题讨论】:
标签:
authentication
web2py
【解决方案1】:
下一句说:
可以通过以下方式禁用组的创建
1. auth.settings.create_user_groups = False
接着说:
用户拥有群组成员资格。每个组由名称/角色标识。组有权限。用户拥有权限是因为他们所属的组。
它是一个基于角色的访问控制 (RBAC) 系统,因此授予组/角色而不是单个用户的权限,并且用户通过他们所属的组(包括他们自己的用户特定组)获得访问权限.这在chapter intro 中有更全面的解释。
如果您不需要向单个用户授予特定权限,而只需授予更广泛定义的组/角色,则可以按照上述方式禁用自动创建特定于用户的组。
【解决方案2】:
您可以将 user2 添加到 user1 的组中,以便 user2 获得 user1 的权限。它在许多情况下很有用...