先從數據庫開始,因為是用EF的code frist,所以所有的設計都在解決項目中進行。
先是數據模型開始
我已經建立了四個模型,user,role,action,actiongroup
user裡面有role,role中的ActionIds存儲action的id組合字符串,actiongroup作為action的分組。
所以只要知道user的role,就可以裡面找出他對應的action操作,做到功能上的權限管理。
再配合MVC的過濾或者繼承,對有需要的action進行標示授權,功能顆粒化就達到了。