平台、语言无关性:梁山权限引擎的文档

15-04-25 luda
              

哪些需要约束,哪些无需约束

权限引擎的用户接口简单的无需附加约束,而躲在用户接口背后的引擎的架构和实现可能需要附加约束。权限引擎的用户接口是简单的稳定的,但是躲在用户接口后面的权限引擎的实现可能会有很多种具体的实现方法。大家一起考虑一下写个类似ecmascript xacml等那样的文档呗,完整的描述出来一个参考实现,供C++、java、.net、rust、golang……等平台和语言的权限引擎实现者参考。

前人留下有良好的文档形式

找到一个ECMAScript文档,http://lzw.me/pages/ecmascript/

看着很不错,我们可以仿照着写:权限引擎定义,术语定义,类型、对象、行为,集合、行为,命令、事件,管道,链接,异常,环境。

梁山兼容并包,不论大刀和长矛的高下,无平台和语言之争

需要靠这份平台无关性的文档来知识跨平台,梁山的权限引擎在各平台的宏观架构上具有一致性这样符合构造定律,有利于为使用者节省学习成本。

只是梁山下面的引擎会大致一致,非梁的引擎不需要一致,权限引擎的用户接口其实只有唯一的一个AcResult Permit(subject, action, object)方法,无论是梁山的还是非梁山的那个唯一的用户接口应该都会是差不多一致的,只是梁山在这种一致性之上更进了一步,希望躲在接口后面的那个引擎的宏观上的架构实现也基本上是一致的。它们在分形,它们符合构造定律,它们节能,它们得以持久。

草莽英雄,群星下届

梁山人手不够,需要多找些林冲、武松、鲁智深等人上来,他们没上来之前我们不敢贸然发布1.0。经过他们的知识的验证后会发布1.0,到时候教程应该会出来。林冲、武松、鲁智深练的武功不同,梁山人练的武功十八般武艺都有,需要一份平台无关性的文档让大家参与进来。

新水浒传片尾曲《四海盟约》- 毛阿敏

anycmd已经是个开源的权限引擎的名字,"anycmd"这几个字母不适合作为具体人的名字了。名字叫anycmd的那个账户是晁盖,晁盖已挂,宋江已到,我是大和尚鲁达,刚刚丢了提辖闲官。

权限系统干什么?

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

              

luda
2015-04-28 12:01

梁山保留将anycmd的中文英文化的权利,并且永远不想和不去英文化。谁(母语是中文的人)把anycmd翻译为英文梁山人找谁的麻烦(不反对母语非中文的人在学会了中文后翻译为他自己的母语)。使用母语是长久考虑,必须做到让后来者望文生义,必须做到词汇的使用在任何上下文中都是使用的本意。

梁山不认为未来属于英文世界,梁山只认为未来属于中国,坚决不使用英文,坚决使用传统本意意义上的中文词汇。希望沿着东方的知识树构建,而非沿着西方的知识树构建。