开源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开源权限引擎介绍 概述 系统中的权限管理大家都很熟悉,实现模式大同小异。研究和尝试实现权限框架的人很多,基本上把这块想明白了并实现出来就不再是初学者了。总的来说权限管理就是...

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

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

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

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

Java通用权限系统管理(Spring+springMVC+ibatis+Angularjs)

出来工作几年了,大大小小也做了几套权限管理系统,第一次做的非常水,只做增删改查,基本上处于给别人打打下手,第二次是自己单独做的,但是功能不是很完整。现在准备把自己做权限管理系统的经验与心得拿出来分享总...

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

node.js开发之RBAC用户角色权限设计方案

文章出处:http://rongxh2010.iteye.com/blog/930648

NODE ACL - NODE权限管理 - 功能探索

Node ACL 功能探索 NODE ACL github项目地址 :https://github.com/OptimalBits/node_acl 功能列表...

tp5的RBAC插件及其使用很方便的管理用户登录及操作权限

tp5-rbac 本扩展包是tp5的rbac包,使用了部分tp5的特性实现了关系型数据库中特殊数据结构的处理。 安装方法先安装composer如果不知道怎么安装使用composer请自行百度。 ...

用户和角色:通用权限管理系统数据库表结构如何设计?

一,前言 权限管理系统的应用者应该有三种不同性质上的使用, A,使用权限 B,分配权限 C,授权权限  本文只从《使用权限》和《分配权限》这两种应用层面分析,暂时不考虑《授权权限》这种。 二...
  • e_zhiwen
  • e_zhiwen
  • 2012年07月05日 23:34
  • 15879
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:开源RBAC权限引擎:Anycmd
举报原因:
原因补充:

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