问题标签 [rbac]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1290 浏览

php - 数据库中有授权规则的原因是什么?

在我的 Yii 应用程序中,我希望我的授权层次结构和业务规则用代码编写,我希望我的用户、角色和权限存储在数据库中。这将我的业务逻辑(应该是代码)与其应该使用的信息(应该是数据)分开。Yii 似乎不支持这一点。

在 Yii 中,您可以选择将业务逻辑放入文件(CPhpAuthManager)或放入数据库(CdbAuthManager)。无论哪种方式,您都将业务逻辑视为数据;Yii 实际上会将您的业务逻辑作为字符串检索,然后通过 an 运行它eval,这似乎是一种糟糕的方法。

这是什么原因?

我怎样才能达到我想要的结果?

0 投票
2 回答
739 浏览

rbac - 什么是 XACML 配置文件?

我是 XACML(可扩展访问控制标记语言)的新手,我有点困惑。我不明白个人资料是什么。例如 RBAC 或 SAML 配置文件。

它们之间有什么区别?结构和元素不总是一样的吗?

谢谢你的帮助

0 投票
1 回答
4983 浏览

php - Yii accessRules 表达式不起作用

在我的控制器中,我有

但由于某种原因,deleteComment 上的表达式总是给我一个 403 错误(未经授权)。即使我已经测试了那个表达并且得到了真实。甚至把'表达式'=>'return true;' 不起作用。:( 我完全糊涂了......有什么想法吗?谢谢,布拉德(:

0 投票
1 回答
3783 浏览

codeigniter - 复杂的 RBAC Codeigniter 库(用于细粒度的用户权限和基于组的限制)

我正在进行一个项目,该项目需要某种与身份验证集成的 RBAC,但具有高级功能(根据角色/组设置“上限”或“用户限制”)。SaaS GitHub、Basecamp 等具有付费和免费计划的网站就是一个很好的例子。

我已经测试过:

离子认证 - http://github.com/benedmunds/CodeIgniter-Ion-Auth

Wolf Auth - http://github.com/Vheissu/Wolfauth---A-Codeigniter-Auth-Library

烫发火花 - http://getsparks.org/packages/perm/versions/HEAD/show

Codeigniter-RBAC - https://github.com/pdiddy/CodeIgniter-RBAC

和其他一些(所有人:篝火)。其中一些只有身份验证功能,一些缺少身份验证但提供 RBAC。这些都没有使用或提及设置用户限制的可能性。

我自己开始开发一个类似的库(尽量不破坏 Ion Auth 函数命名,因为我要从那里搬出去),但是,考虑到我只是完成了数据库模式的规划并在迁移中实现它,我认为它更好使用已准备好并经过测试(如果存在)的东西,而不是重新发明轮子。有谁知道一个图书馆来完成这个特定的任务?

我正在使用 CI:2.1.0 + HMVC,考虑为此特定目的添加 DataMapper 或 RedBean。

0 投票
2 回答
3983 浏览

django - django 守护者、权限和将 django auth 组扩展到“组织”模型

django Guardian https://github.com/lukaszb/django-guardian是一个写得很好的对象级权限应用程序;我实际上已经在各种 django 项目中阅读并使用了许多其他 django 对象级权限应用程序。

在我最近正在进行的一个项目中,我决定使用 django Guardian,但我有一个模型设计问题,涉及两种可能方法的优缺点以及它们各自对 sql 查询性能的影响:-

  1. 使用django.contrib.auth.models.Group并将其扩展到我的自定义组织应用程序的模型;或者

  2. 改为使用django.contrib.auth.models.User并为我的组织应用程序中的每个组织类型创建一个 m2m 字段。

方法#1

在这种方法中,当用户第一次添加到组(django 组)时,组对象被创建并分配给这 3 个类中的一个,如果该组对象不属于它添加的类进入。

这意味着每个 StudentClass 对象sc_Asc_B可能包含很多组。

这意味着我要确定特定用户(例如myuser)是否属于特定组织,我必须查询该用户所属的groups_myuser_belongto = myuser.groups所有组,然后通过查询关联到的所有组我感兴趣的组织,groups_studentclass = sc_A.groups.all()由于我现在有 2 个需要比较的列表,我可以这样做set(groups_myuser_belongto) && set(groups_studentclass),这将返回一个新集合,其中可能包含 1 个或多个相交的组。如果有 1 个或多个组,myuser则确实是 的成员sc_A

因此,这种模型设计意味着我必须经历很多麻烦(和额外的查询)才能确定用户是否属于某个组织。

我使用 m2m 到组的原因是为了利用 django Guardian 提供的组级权限功能。

这样的模型设计实用吗?

还是我最好选择像这样的不同模型设计......

方法#2

显然,这种模型设计让我很容易检查用户对象是否属于特定组织。要确定用户john是否是教学团队的一员,我需要做的maths_teachers就是检查:

但是这个模型设计的含义是,当我将用户对象添加到组时(回想一下,我想使用 django Guardian 的组权限功能),我必须确保save()调用将用户对象添加到“数学教师”组中在django.contrib.auth.models.Group AND到我的自定义TeachingTeam课程的“数学教师”对象中。这感觉不是很干,更不用说我必须以某种方式确保对两个模型的保存调用都在一个transaction.

鉴于此用例/要求,是否有更好的方法来设计我的模型 - 使用 django 组,但提供一种“扩展”django 的本机组功能的方法(几乎就像我们如何使用“用户配置文件应用程序”扩展 django 的用户模型一样) ?

0 投票
4 回答
3129 浏览

c# - MVC .NET - 是否有允许基于权限的系统的安全框架

我是 MVC .Net 的新手。我想实现一个 RBAC 系统。我有某些成员可以执行的某些操作/权限。

是否有允许我这样做的安全框架?

更多信息

我正在寻找类似于论坛的东西 - 用户可以发布新帖子,回复他们等。另一方面,版主应该有权修改帖子,禁止用户等以及那些提供给普通用户的权限。

我读到.NET 框架提供了一个成员表。我对此没有太多了解,但据我了解,它只是将用户分组为某些成员。它没有权限的概念。

我是否必须在 Membership 表的顶部添加另一层(似乎我正在重新发明轮子),或者是否有一个框架已经这样做了。

0 投票
1 回答
5935 浏览

java - 访问安全域时出现 EJBAccessException

我正在尝试使用 EJB 运行一个简单的 RBAC 示例,但是当客户端从具有 SecurityDomain 的类中调用方法时,我得到: javax.ejb.EJBAccessException: JBAS013323: Invalid User.

这是我的设置:

  • 服务器项目
    • EJB 3.1
    • JBoss AS 7.1
    • Picketbox(下载附带的 3 个 jar 文件)

客户端是一个简单的java项目

我以后要保护的服务器项目中的类如下所示:

在 META-INF 的 jboss-ejb3.xml 中,我有:

我使用这个文件是因为我无法导入 org.jboss.ejb3.annotation.SecurityDomain 注释。(也许我有错误的依赖关系?)

在 jboss-as-7.1.0.Final\standalone\configuration 的standalone-full.xml 中,我有:

无论我是否尝试在客户端内进行身份验证,都会发生异常

或者,如果我不对他进行身份验证(因为:name="unauthenticatedIdentity" value="guest"),那么就使用客户应该收到的来宾角色。另一件事是,即使我提供了错误的凭据,似乎也不会抛出来自 SecurityClient 的 LoginException。在此之后,我对 SomeBean 类进行正常查找并将其转换为 SomeRemote。调用 unsecuredMethod(..) 时会发生异常。我对两者都进行了尝试,给来宾用户一个角色表中的角色,而没有。

在客户端项目中,除了使用 SecurityClient 和查找之外,我没有做任何与 rbac 或 ejb 相关的事情,我希望这是正确的。

也许有一些很好的教程可以解释一切。我可能会遇到问题,因为我的解决方案基于 Jboss AS 6 教程。

Edit: After searching the internet for this exception for hours I found a hint in a book that says that if jboss cannot find the database tables used for authentication you will always get the message: "Invalid User". So probably i have a problem with my data source configuration.

0 投票
1 回答
306 浏览

php - Yii 框架:CPhpAuthManager 错误

我尝试使用本 指南 制作 RBAC,到目前为止,我让它没有错误地工作,但我现在卡住了几个小时,因为我的模型中的规则不起作用。我尝试使用以下代码测试读者角色:

因此,在我登录后,应该会出现这条小消息,但不知何故不会。例如,当我登录并尝试转到我的模型索引时,我可以看到注册用户,它告诉我我没有权限,甚至认为我这样做了:

欢迎任何想法,并告诉我是否需要显示更多代码。好的回到思考。

0 投票
2 回答
11589 浏览

database - 树系统中基于角色的访问控制

我试图找出为结构为树系统的用户权限系统创建数据库的最佳方法。

(用于说明目的)我有三个级别的控制:1物业组、2物业、3建筑。一个属性组有几个属性,一个属性有几个建筑物。

我想在每个级别上设置管理。

aPropGroupAdmin可以查看和编辑设置属性组内的所有属性,以及里面的建筑物。

aPropAdmin只能查看设置的属性和其中的建筑物

和一个BldngAdmin只能查看设置的建筑物

我设想它的工作方式是用户 Bobby 是一个属性组 ID 为 102 的 PropGroupAdmin。这将转化为我可以从视图中读取的一系列特定权限。

我的问题是如何设置 GroupPrivileges 表以能够继承(如果这是正确的话)层次结构?本质上允许我创建一个视图,我可以阅读该视图以查看用户是否具有执行任务的正确权限。

我创建了一个小图表,说明我想象它会如何工作。 在此处输入图像描述

我知道这不会这样工作,我只是想弄清楚热以进行更改以获得类似的结果。

0 投票
2 回答
1063 浏览

php - RBAC 推荐的 Role->Task->Operation 方法是什么

我开始在 Yii 中使用 srbac。

可用选项:创建角色、任务和操作,然后分配:操作到任务、任务到角色。

我的问题是:我需要为每个操作创建一个任务吗?因为我想将 1 个操作分配给最低用户级别,将 4 个操作分配给超级管理员。

希望我很清楚,丹尼