前面我们在AgileEAS.NET之插件接口IModule和AgileEAS.NET之插件运行容器中对模块插件和运行容器都做了介绍,我们知道,在运行容器中,我们要基于模块插件并结合账户/角色进行权限判定,在系统账户登录之后,导航动态加载账户所具有执行权限的模块。
AgileEAS.NET平台的权限系统参考了Windows系统的权限管理系统ACL(访问控制列表),AgileEAS.NET平台建立了基于模块插件与账户/角色组合的访问控制列表,对模块访问权限进行统一的管理和验证。
AgileEAS.NET提供了一供业务模块权限机制,这组功能包含在AgileEAS.NET之模块插件集成一文中所指的模块管理插件中,本文对其做一个补充和对鉴权验证做一个说明,下面说授权机制:
模块属性的安全选项卡列出了拥有特定模块某种访问权限组合的账户和角色列表,上图中所包含的是两组角色,及其所具有的详细权限,我们可以通过添加和删除来增加和删除账户和角色对所授权的权限,添加权限会打开账户/角色选择窗口:
我们对刚新增加的账户选择权限并确定保存权限,删除某个角色/账户的访问权只需要选种角色/账户,点删除即可,接下来,我说一下不同容器的鉴权验证过程。
对于基于WinForm技术的运行容器,权限登录账户动态加载具有执行权限的模块,对于WebFrom运行容器,我们在动态加载导航的基础上增加模块在调后时的检查,对于ws类的服务插件,我们提供基于运行期的安全检查。