[英]Attribute level authorization using cancancan in rails
我正在使用cancan进行授权。 我有不同的管理员角色,我想根据他们的角色(admin,mega_admin)向他们显示特定的列。 基本上我想做这样的事情。
index do
selectable_column
column :first_column if can? :read_first_column #visible to mega_admin only
column :second_column if can? :read_second_column
actions
end
由于cancancan不提供属性级别授权,我该怎么办?
您可以尝试版本3.0( https://github.com/CanCanCommunity/cancancan/tree/feature/3.0.0 )和属性级别权限功能( https://github.com/CanCanCommunity/cancancan/tree/feature/ 3.0.0#version-30 )。
请注意,目前尚未发布,因此您必须从github中添加它:
gem 'cancancan', github: 'CanCanCommunity/cancancan', branch: 'feature/3.0.0'
。
使用版本3时,您可以定义:
can :read, ModelClass, :first_columnn
can :read, ModelClass, :second_columnn
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.