ruby-on-rails - Ruby on Rails 中基于授权或基于角色的权限入门。

标签 ruby-on-rails user-interface authentication devise admin

自 1 周以来,我一直在接受重大审讯。 我有 3 种不同类型的用户:

  1. 管理员
  2. 编辑器(需要管理员验证才能在 数据库)
  3. 简单用户(具有评论、添加收藏夹等基本功能...)

目前我只是安装 gem devise(它很神奇)

那么对您来说,为不同的用户提供不同的权限的最佳实践是什么? 简单 bool 值(用户、管理员、编辑者)? 例如,我需要使用 user_id 为编辑器指定特定帖子? 您知道有一位 gem 可以帮助您做到这一点吗? 您认为可以建立一个管理验证系统来注入(inject)数据库吗? 我如何为编辑帖子创建待处理列表?

这肯定是很多菜鸟问题,但我现在迷失了,所以如果你能帮助我,请:)

谢谢

最佳答案

因为这是一个没有代码示例的通用问题,所以我将在开始解决此问题时建议一种通用方法。

您需要的是康康康 gem :

github.com/CanCanCommunity/cancancan

gem提供了可以在rails框架中轻松使用的“授权”框架和功能。

最初的 gem 康康舞也是由 Ryan Bates 创作的。这是一个解释它的精彩视频:

railscasts.com/episodes/192-authorization-with-cancan

此外,如果您是 Rails 初学者,我建议不要在不了解“devise magic”如何工作的情况下使用它。一个好的开始是从头开始尝试身份验证,正如 Ryan bates 在这里简单地解释的那样:

railscasts.com/episodes/250-authentication-from-scratch

这将使理解康康康变得更容易。

关于ruby-on-rails - Ruby on Rails 中基于授权或基于角色的权限入门。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38752765/

相关文章:

ruby-on-rails - Rails 错误处理;报告,自定义错误

ruby-on-rails - 如何从指定日期从谷歌日历中删除所有事件?

perl - 有哪些优秀的 Perl 交互式 GUI 构建器包?

java - 将图像显示为网格或列表

authentication - Dart 登录/注销示例

authentication - JMeter自定义身份验证

ruby-on-rails - 如何获得超过 20 个帖子的 Instagram API (Rails)

ruby-on-rails - 从 Rails 应用程序中的 gem 重载 CSS 文件

java - 使用 Swingworker 不断更新 GUI

java - 如何在 Java 中使用 facebook connect 和 scribe 库注销用户?