Ruby on rails 限制rails管理员gem上的访问
我有rails管理员gem来查看我的应用程序的用户友好数据库。在这个数据库中,我有很多库,我想知道是否有一种方法只有某些管理员才能访问某些库。 例如,使用电子邮件管理用户library123@admin.com只能在rails管理员数据库中查看库123中的详细信息,因此该管理员只能访问URL 而不是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管理员说,只允许
我使用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我明白你的意思。是的,你应该考虑莫森的回答并实施授权,这正是它的目的所在。