一、認證
認證語句如下

這里不明白為什么沒用FilterAttribute的形式來做權限管理,感覺這樣寫很不像NOP的風格,也不MVC。這里如果誰知道原因的請指教一下。
所有權限認證都通過PermissionService來管理,系統內置的權限統一在StandardPermissionProvider類里面。
StandardPermissionProvider類繼承自IPermissionProvider接口,插件的權限也可以通過繼承IPermissionProvider接口然后在系統界面統一管理。
PermissionService默認有三種驗證方法

驗證的方法也很簡單,做了兩個for循環進行查詢此用戶是否有此權限

二、添加權限
系統默認沒有界面來添加權限,但可以通過插件的形式進行添加權限。
添加方法為繼承IPermissionProvider接口,系統會遍歷所有dll找尋實現此接口的權限列表,管理員可在訪問控制列表統一進行管理。
三、角色管理
角色沒有特別的地方,系統內置的有四個角色並且管理員可在界面直接進行添加,添加完畢后權限列表頁面可對這些角色進行權限管理。
如果角色多了的話這個頁面就比較恐怖了,不過幸好這是一個B2C的系統角色應該不多。
