问题标签 [abac]
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.
permissions - 基于角色的访问控制,通过某些属性进行权限限制
每个用户都有一个或多个角色,每个角色都有一个或多个权限。到目前为止,我可以通过角色收集与用户关联的所有权限。
问题
一些权限有一些限制。例如:
用户可以编辑属于他的站点的所有帖子,但不能编辑其他帖子。
因此,“编辑帖子”权限应该有这个约束。
关于模型:如果约束与权限相关,我无法确定哪些约束对特定用户有效。
用户模型可以具有像“站点”这样的属性,但不是所有属于一个站点的用户都应该具有上述约束。他们中的一些人应该能够编辑所有帖子。
问题
确定哪个约束对特定用户处于活动状态的最佳方法是什么。我是否必须将其拆分为单独的权限并将约束集成到权限模型中,还是有更好的解决方案?我偶然发现了基于属性的访问控制,但我不确定是否应该切换到完全不同的方法
任何帮助表示赞赏:)
authorization - 使用开源 XACML 实现来模拟 PDP、PEP 和 PAP
我正在开发一个 ABAC 项目,并在 Eclipse 中使用 ALFA 插件来编写策略并通过 java 程序执行相同的策略。相反,我想利用可用于模拟 PDP、PAP 和 PEP 的开源 XACML 实现。如何解决问题?
xacml - 使用 ABAC 安全性时,如何查找规则?
在实现 ABAC/XACML 时,规范表明您应该使用 PEP 拦截对敏感数据的请求,PEP 将请求路由到 PDP(在调用 PDP 时,PEP 包括有关主题、环境、资源和操作的属性)。
然后,PDP 确定需要为访问决策评估哪些规则。
来自维基百科: https ://en.wikipedia.org/wiki/XACML
XACML 提供了一个目标,[5] 它基本上是一组针对主题、资源和操作的简化条件,策略集、策略或规则必须满足这些条件才能应用于给定请求。一旦发现策略或策略集适用于给定请求,就会评估其规则以确定访问决策和响应。
策略集、策略和规则都可以包含目标元素。
我的理解是,PDP 如何决定 PIP 中的哪些规则适用是特定于实现的,但这似乎是流程中非常重要的部分——例如,如果您错过了一条规则,您将无法正确评估请求。人们以什么方式实现了这一点?什么有效,什么无效?(我不情愿地倾向于针对 EAV 表进行查找。)
authorization - 使用 ABAC/XACML,您如何保护报表/大型结果集中的资源?
人们在运行报告甚至只是从数据库中选择多条记录时是如何使用abac方法的?
例如,如果您的政策规定:
医生只能在他们的医院查看病人
显然,实现这一点的有效方法是在查询中包含一个过滤器 ( where hospital = XXX
),但这似乎与 ABAC 的原则相违背,因为它将规则烘焙到 SQL 本身中。
我知道Axiomatics提供了一种反向查询机制,它显然会根据规则为您生成过滤器——但我的系统有很多复杂的 sql,必须对其进行大量重构才能使用。
其他人是如何处理这个问题的?
time - XACML 3.0 中的时间数学和时区支持
我想了解有关 XACML 版本 3 的 PDP 流程决策的一些见解,其中涉及基于时间窗口的决策的处理,特别是它如何与作为规范一部分的时区字段支持一起工作。
对于策略,我使用这样定义时间事件:HH:MM:SS-Tz:00
例如,我们可以谈论一个位于纽约市的数据中心,目前在东部夏令时 (EDT) 下运行在 UTC -4 小时,而在西海岸、旧金山地区在 UTC -7 小时存在客户,也使用 DST 调整。此外,我们可能会在没有 DST 的情况下在 UTC-3 看到来自圣保罗的访问。
如何定义授权访问窗口以覆盖每个地点工作时间内的所有服务交付?我们应该在 UTC (+00:00) 下声明它还是 PDP 在策略处理期间进行所需的转换,例如在 18:00:00-07:00(旧金山的一天结束),这将映射到01:00:00 UTC 作为服务交付的最终限制,转换回纽约为 21:00:00-04:00。
我假设请求将在本地时间生成,也参考本地时间。
我们能否在 XACML PDP 下推动基于中央时间的决策,或者在每个办公室和时区基础上应用多个策略更好,例如为每个城市使用单独的策略,例如:旧金山、圣保罗和新约克?然而,类似的担忧是对显示几分之一小时的亚洲时区的支持。是否有可用的文档来澄清 XACML 下与时间数学相关的疑问?
时间窗口决策的示例规则
authorization - XACML 与 WSO2 身份服务器
我刚开始用 wso2 学习 xacml,我浏览了这个示例帖子,它运行良好。我的问题是如果我使用 tomcat 部署我的战争文件而不是 wso2,那么我如何保护我的受保护页面。
谢谢你
authorization - 多级授权
我需要对一些公共托管的 API 实施授权。应允许外部实体在认证和授权后使用 API。基本身份验证将用于执行身份验证。授权应基于角色,并且必须在多个级别进行:
- 如果标识的用户具有 system_user 角色,则允许 API 访问 else
- 如果识别的用户没有 system_user 角色,则找出在数据库中映射到哪个设备(试图从哪个用户访问)的帐户。识别帐户后,确定该帐户是否属于该用户,并且用户已获得该帐户的正确角色。
实现此逻辑的一种方法是我使用数据库和代码创建所有专有的东西。但在我这样做之前,我想知道是否有一些工具可以通过 XACML 等规则帮助实现这个逻辑
authorization - XACML 中的元素 CombinerParameters 和 CombinerParameter
我正在阅读 XACML 标准并且看到了这些元素,但是文档非常技术性,我找不到有关这些元素的示例。
XACML中的元素CombinerParameters
和CombinerParameter
作用是什么?
谢谢。
authorization - 使用 XACML 策略 wso2is-5.1、wso2esb-4.9 和 wso2as-5.3 的身份验证和授权示例
我是 wso2 环境的新手。我正在做一个使用 wso2 技术进行身份验证和授权的示例应用程序。在http://wso2.com/library/articles/上,我找到了相同的示例应用程序,但这些示例应用程序基于旧版本的 wso2 软件。
我正在为我的应用程序使用 XACML-3.0、wso2is-5.1、wso2esb-4.9 和 wso2as-5.3。我主要是配置问题。
如果有人有示例应用程序或知道链接,我可以在哪里获得,请告诉我。
谢谢