Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 限制rails管理员gem上的访问_Ruby On Rails_Ruby_Rails Admin - Fatal编程技术网

Ruby on rails 限制rails管理员gem上的访问

Ruby on rails 限制rails管理员gem上的访问,ruby-on-rails,ruby,rails-admin,Ruby On Rails,Ruby,Rails Admin,我有rails管理员gem来查看我的应用程序的用户友好数据库。在这个数据库中,我有很多库,我想知道是否有一种方法只有某些管理员才能访问某些库。 例如,使用电子邮件管理用户library123@admin.com只能在rails管理员数据库中查看库123中的详细信息,因此该管理员只能访问URL 而不是 我使用Desive对rails管理员进行身份验证,我不使用任何gem进行授权 我正在考虑向用户添加一个与库相关的列,以了解每个用户属于哪个库,但是,我一直在想,我该如何对rails管理员说,只允许

我有rails管理员gem来查看我的应用程序的用户友好数据库。在这个数据库中,我有很多库,我想知道是否有一种方法只有某些管理员才能访问某些库。 例如,使用电子邮件管理用户library123@admin.com只能在rails管理员数据库中查看库123中的详细信息,因此该管理员只能访问URL 而不是


我使用Desive对rails管理员进行身份验证,我不使用任何gem进行授权

我正在考虑向用户添加一个与库相关的列,以了解每个用户属于哪个库,但是,我一直在想,我该如何对rails管理员说,只允许查看该用户所属的库。

假设您在用户模型中实现了
#admin?
(或类似功能):

  authenticate :user, ->(user) { user.admin? } do
    # mount your restricted routes
  end

你是如何处理身份验证的?设计?您是否使用任何授权gem?我使用Desive对rails管理员进行身份验证,而我不使用任何gem进行授权。您还需要使用授权gem。像CanCan一样,为每个用户定义一些自定义权限。我的用户模型中确实有一个admin列,但是,我如何才能在电子邮件中说user admin true123@admin.com只能通过电子邮件查看/admin/libraries/123和user admin true456@admin.com只能看到/admin/libraries/456我明白你的意思。是的,你应该考虑莫森的回答并实施授权,这正是它的目的所在。