权限管理的实质

系统中的权限管理大家都很熟悉,实现模式大同小异。研究和尝试实现权限框架的人很多,基本上把这块想明白了并实现出来就不再是初学者了。

世界是二元的

主客体是 空间 , 操作 是 运动 ,运动是主客体的 变化 ,运动是空间的变化,空间的变化是 时间 。一切的一切都是如何管理时间与空间?如何 管理 这个时空?大体是:时空 集合化 (时间集合化,空间集合化,时空集合化)、时空 类型化 、 场化 ,人与时空 一体化 、 系统化 、 优化 、 本能化 。事件万物变化都能抽象成空间在时间上的变化。所以世界是二元的。

控制什么

从动词开始。要控制权限首先得明白是系统要发生某种事件,“花是红的”这种陈述句是没有什么权限可以控制的。什么样的动作是潜在的需要被控制的动作呢?这个答案很简单——任何动作。但具体哪些控制是有意义的哪些控制是无意义的这要根据你的业务需求具体分析。本文不是分析具体领域的业务逻辑的而是探讨访问控制的方法的。 

动词才有控制,没动词的陈述句是无需控制的。“太阳会落”不需要控制,“林教授对学生说太阳会落”就可能需要被控制,因为‘林教授“说”’,说是动词。

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

权限管理模型

没有空中楼阁。若不是先人留下的知识帮助我们,高楼大厦不可能拔地而起。人类文明近万年无数人共同维护着的知识结构体系是个相当良好的树形结构。任何一个分支在使用到任何一个词汇时引用的本意都不与它的父节点冲突,那些存在冲突或有歧义的不良节点往往会在我们第一次听到它之前就已经被先人过滤掉了,或者迟早被我们或者后人纠正过来,既然这样那么只要我们曾经系统的熟悉过整棵树上某一个分支或者部分分支的话就可以通过上溯和下钻来容易的熟悉其它分支的知识。先人鼓励后来者大胆假设、大胆思考,先人极力维护出一棵结构良好的知识树的目的就是希望后人可以容易的掌握知识的规律,通过思考、联想、加工去学习它,良好的知识树支持你望文生义。

  • 无标签