基于角色的访问控制实用程序
RoleMiner的Python项目详细描述
RoleMiner公司
Python实现了FastMiner和最优布尔矩阵分解/RMP算法,用于实现基于角色的访问控制,如下文所述:
- RoleMiner: Mining roles using subset enumeration
- Optimal Boolean Matrix Decomposition: Application to Role Engineering
概述
基于角色的访问控制(RBAC)的目标是确定一组“最佳”的角色,这些角色能够准确地描述用户的访问,而不会过度拟合。在许多方面,这类似于信号处理,在进行分析之前必须删除“噪音”(或一次性权限/授权),然后在清理后的数据上生成一系列候选角色,因为通常不可能对所有可能的角色进行彻底搜索(大约2^n)。一旦找到候选角色,我们就可以通过放松约束(即Regularization)进一步构建基本角色挖掘问题(RMP),而不仅仅是“找到描述已清理数据的最小数量的角色”。在
通俗地说,可能的正则化者可以是如下所示:
- 角色必须至少有5个不同的权限,否则我们将其视为无效角色
- “我们要忽略的角色只对少于3个用户有效,管理员角色除外”
广义地说,迭代生成候选角色的过程并迭代具有不同正则化项的最佳选择的过程与Simulated Annealing非常相似。在
安装
使用pip安装最新版本的RoleMiner代码和依赖项:
$ pip install -U RoleMiner
- 项目
标签: