.NET通用权限管理系统


在Spring下,Acegi这框架把通用权限管理做得非常好,但要在.NET下实现相同的功能,难度非常大,
虽然.NET也有Spring框架,但要做成通用,并且在人手不充裕的情况下,压力很大。我已经一年多没
做.NET了,这一年多做的几个项目都是JAVA的,希望C#这个比JAVA还要优雅的语言不会让我痛苦。
实现目标:
公司组织架构与权限管理结合,粒度为数据行。
roleDesign.JPG


到今天为止,权限的配置功能都已经写好了,但在对登录用户的权限判断上,还没有成型的设计。现在有一个想法:
  1. 建立一个SuperForm,让所有WinForm都继承它;
  2. SuperForm里有个方法,是根据用户拥有的权限,然后把其子窗口中的增、删、查、改按扭进行授权,有权限的,按扭就可用,否则就不可用;
  3. 子窗口的onLoad事件就调用父窗口中的这一方法来设置按扭的可用与否。
这里有一个问题,就是每个子窗口的增、删、查、改按扭名字都不一样的,虽然目前我们的系统用的按扭都是自定义控件,其type都是可以控制的,但是如果是menu就比较难控制了。
对于menu,似乎要把其标识写死了,作为数据库初始数据。
想学Acegi那样用AOP拦截,但由于winForm太多了,如果全部用spring管理起来,会耗很多系统资源,目前光业务方法与DAO都占几十M的资源了。


posted @ 2007-01-15 19:39  电视机9号  阅读(...)  评论(...编辑  收藏