【问题标题】:Does this User Permissions set-up make sense?这个用户权限设置有意义吗?
【发布时间】:2011-06-05 07:25:27
【问题描述】:

我正在构建一个 Rails 3 应用程序,并且正在设计一个复杂的用户权限工具,其中 Company 用户确定每个 PM 的特定角色。

想象一下这种情况 - 公司希望针对三种类型的数据建立特定的角色。

  • 项目表
  • 客户表
  • 公司帐户(即公司表)

我正在考虑添加一个包含这些字段的角色多态表:

  • user_id(此角色适用的用户,除非 all_users == true)
  • 项目类型(例如“项目”、“客户”或“公司”,除非 all_items == true)
  • 项目 ID(如上)
  • 角色(例如“读取”、“编辑”、“销毁”,甚至“自定义”)
  • all_users(布尔值:此项的角色是否适用于所有用户)
  • all_items(布尔值:此用户的角色是否适用于所有项目)
  • company_id(“拥有”此角色的公司)

我觉得 CanCan 将是完成此任务的一种不错的精简方式,但这是我的问题。 1. 上表是一个很好的方法吗? 2. CanCan 能否与此相结合以创建有效的解决方案?

【问题讨论】:

    标签: ruby-on-rails permissions ruby-on-rails-3 roles cancan


    【解决方案1】:

    您的表似乎是实现非常复杂的授权方案的明智方式,这似乎是您所追求的。

    就 CanCan 而言,是的,它将与此完美结合。 CanCan 所做的只是让您能够根据某些标准定义动作、模型等的授权。这些标准可以是任何东西(例如,一个月中的哪一天等),但通常与角色相关联。因此,您所要做的就是根据 Role 表中的信息和要评估的特定模型实例指定授权权限。

    【讨论】:

      猜你喜欢
      • 2018-12-10
      • 2015-08-01
      • 1970-01-01
      • 2019-04-04
      • 1970-01-01
      • 1970-01-01
      • 2019-01-12
      • 1970-01-01
      • 2015-05-18
      相关资源
      最近更新 更多