开源RBAC权限引擎:Anycmd

转载 2015年11月19日 20:55:48

权限系统干了什么?

给出一套方法,将系统中的所有功能标识出来,组织起来,托管起来,将所有的数据组织起来标识出来托管起来, 然后提供一个简单的唯一的接口,这个接口的一端是应用系统一端是权限引擎。权限引擎所回答的只是:谁是否对某资源具有实施 某个动作(运动、计算)的权限。返回的结果只有:有、没有、权限引擎异常了。

文档 http://anycmd.github.io/anycmd/

背景

介绍

访问控制元素

访问控制字段

EntityType和ResourceType和Ontology三者的区别与联系

数据交换协议指南

模拟事务——为SQL和NO SQL统一事务工作

演示站 http://www.anycmd.com:20150/

赞助

梁山-开源权限引擎

Anycmd简介

Anycmd是一个.net平台的完全开源的,完整支持Rbac的(包括核心Rbac、通用角色层次Rbac、静态职责分离Rbac和动态责任分离Rbac),将会支持xacml的通用的权限框架、中间件、解决方案。完整的Rbac规范所定义的能力只是anycmd所提供的能力集的一个子集。 如果您感兴趣的话现在可以先观察Anycmd的源码,期待您为Anycmd提供帮助确保她走在正确的道路上。

框架、中间件、解决方案是它的三种使用模式:
框架模式: 引用一两个必要的dll或者相应的源码,它跟您的应用系统运行在一起,您有能力完全控制anycmd,您需要自己提供UI层,但anycmd自带的UI层也是可用的。通过面向anycmd遍布各处的扩展点编程使用者有机会有能力实现自己个性化的需求;
中间件模式: 引用一两个必要的dll和一些资源文件,它可以跟您的应用系统运行在一起,它提供UI层但您也可以删除并自主提供,它按照最佳实践提供默认配置,您可以通过调整配置比如自定义插件来满足或接近满足您的需求。可以把anycmd中间件看作是一个独立的系统,只不过它可以和你的应用系统运行在同一个进程、同一个或不同的AppDomain。
解决方案模式: 提供一整套AC最佳实践、方法论,使用者有走向最佳实践的意愿。

如何使用

anycmd不仅提供了来自Rbac国际规范文档的IRbacService接口,还提供了一整套稳定的、功能完备的、风格一致的、流畅的api。框架使用起来非常简单,限定在AC领域内,基本会做到在权限方面的每一个需求都刚好有一个流畅的风格一致的api。编程的时候只需要通过一套风格一致的流畅的api告诉框架我们希望做什么,然后框架就去做了。但是如果能够明白访问控制系统做事情的逻辑的话会更容易使用那些api。 事实上anycmd很容易地就完整实现了对IRbacService的支持,因为对IRbacService的实现不需要书写专门的逻辑,因为anycmd的api是比Rbac所定义的能力集更大的,只需直接委托给anycmd的api就完整实现了IRbacService。

运行

找到Web.config的BootDbConnString应用设置项,将这个连接字符串的密码修改成您的密码。Web.config中只有这一个引导库连接字符串, 其余数据库的连接字符串在Anycmd引导库的RDatabase表中,请使用SqlServer管理工具找到Anycmd数据库的RDatabase表修改其密码项。

测试账户

成功运行后转到“用户”模块,所有现有账户密码都是“111111”六个1。

路线图

  • 1,书写单元测试;
  • 2,书写教程;
  • 3,替换掉UI层,去除试用版的miniui框架;考虑使用extjs
  • 4,内置数据交换系统,用以各业务系统与中心系统间的权限数据交换;
  • 5,支持Javascript;
  • 6,支持LDAP(轻量目录访问协议)。
  • 7,优化;发布1.0版本;
  • 8,支持SAML;
  • 9,基于slickflow(原名wf5)支持工作流http://slickflow.codeplex.com/
  • 10,支持Xacml;

感谢

  • Apworks @ [Apache License 2.0]
  • Jint @ [BSD 2-Clause License]

学习资源


授权协议

The MIT license。

开源权限引擎——与邪恶主体战斗到底

Anycmd开源权限引擎介绍 概述 系统中的权限管理大家都很熟悉,实现模式大同小异。研究和尝试实现权限框架的人很多,基本上把这块想明白了并实现出来就不再是初学者了。总的来说权限管理就是...
  • netplugin
  • netplugin
  • 2015年01月28日 22:05
  • 768

开源权限引擎可能理解了骇客帝国

骇客帝国系统的运行景象 可以把目录想象为空间,功能想象为能力。 资源、场所等都是空间,角色是一组功能。 从形象的角度是这样:比如把会做饭的人投放到厨房,给予他油盐酱醋茶让他在给定的空间使用给...
  • netplugin
  • netplugin
  • 2015年03月06日 15:18
  • 354

完全免费和开源的权限管理系统

由于每次开发新项目都需要一个权限管理系统,为了解决重复开发让成本增加的问题,特此开发一套狼奔权限管理系统,方便大家在此基础上开发出更多更优秀的软件产品。 此项目完全免费和开源,官网是www.langb...
  • u011116462
  • u011116462
  • 2013年07月13日 18:28
  • 2491

Java笔记--权限管理(RBAC)

(一)RBAC( Role-Based Access Control):基于角色的访问控制 RBAC支持三个著名的安全原则:最小权限原则,责任分离原则和数据抽象原则。 RBAC的基本思想...
  • u012482647
  • u012482647
  • 2016年02月26日 10:03
  • 2860

RBAC原理介绍及开源框架kasai使用分析

RBAC 模型作为目前最为广泛接受的权限模型。而Kasai是基于Java开发的开源RBAC软件,网上很多关于Kasai的介绍都仅仅是局限于一些低层次的新闻介绍性质的。而对于该软件的使用以及它与RBAC...
  • gxp
  • gxp
  • 2011年09月21日 10:21
  • 1244

RBAC权限管理

RBAC(Role-Based Access Control,基于角色的访问控制),就是用户通过角色与权限进行关联。简单地说,一个用户拥有若干角色,每一个角色拥有若干权限。这样,就构造成“用户-角色-...
  • PainsOnline
  • PainsOnline
  • 2012年01月07日 15:04
  • 177501

RBAC权限模型——项目实战

这篇文章我们将RBAC权限模型的4种设计思想进行了介绍,接下来我将我们自己项目中的权限模型进行了详细的介绍,最后还针对我们当前的权限模型提出了自己的一点想法。...
  • zwk626542417
  • zwk626542417
  • 2015年07月02日 15:04
  • 30448

开源权限控制框架Uniauth简介

导语 Uniauth是一个基于CAS和Spring Security开源产品而开发的权限控制框架,它的目标是服务于点融网内部的各个子系统,只要集成了该框架,就能以很小的代价实现认证和授权功能...
  • dianrong_opensource
  • dianrong_opensource
  • 2017年03月10日 11:48
  • 2871

权限框架的搭建

一. 思路 二. 具体实现      2.1 配置拦截器      2.2 具体拦截器的处理方法      2.3 注解的配置      2.4 权限的配置      2.5 注解的使用 ...
  • u014077165
  • u014077165
  • 2015年12月14日 20:31
  • 887

基于RBAC模型的权限系统设计(Github开源项目)

计划在Team的Github开源项目里加入权限控制的业务功能。从而实现权限控制。在很多管理系统里都是有权限管理这些通用模块的,当然在企业项目里,权限控制是很繁杂的。 Team的Github开源项目链...
  • u014427391
  • u014427391
  • 2017年12月23日 17:57
  • 492
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:开源RBAC权限引擎:Anycmd
举报原因:
原因补充:

(最多只允许输入30个字)