如何使用rails / java实现基于角色的访问控制?

时间:2014-01-29 18:46:08

标签: java ruby-on-rails authentication authorization rbac

我正在开发包含许多用户的新应用程序,一些角色以及这些角色的特定权限。我想知道实施RBAC的最佳实践。

我的要求是:

我将为用户分配一组角色,例如

user1=superadmin, user2=admin, user3=expert

根据用户角色,我必须限制:

1. Html pages (links in home page).

2. Data in all pages. (like some level of data abstraction).

3. Html elements in few pages. (for eg: some buttons, labels..etc., will be visible to user3).

是否有框架可以继续?

任何建议都非常感谢!

注意:我们将使用rails / java开发应用程序。

3 个答案:

答案 0 :(得分:0)

查看cancan gem。可以找到(较旧的)railscast here

来自github的例子:

<% if can? :create, Project %>
  <%= link_to "New Project", new_project_path %>
<% end %>

答案 1 :(得分:0)

您可以使用Casbin:https://casbin.org/

它支持Java和Javascript进行前端和后端授权。

答案 2 :(得分:0)

在此期间,我创建了一个与RBAC相关的新开源项目:

microservice-rbac-user-management

您可以在此处找到准备使用的RBAC api和模型以及所有文档。 希望对您有帮助。