权限组件实现(续三)(Postgresql)

调用DBPermission判断权限的过程:

首先,程序会调用Permission的getDenyRule和 getAcceptRule来获取屏蔽或接受的规则.

然后逐条判断是否有权限.

现在DBPermission里没有DenyRule,AcceptRule也只有一个RuleImpl.

RuleImpl的判断规则是:取得角色getPermissionProp属性中同权限相对应的属性,进行判断,

如果没有该属性则无权限.如果有属性则进行判断是否可以通过,通过判断Permission的PermissionItem(要求判断的权限项)和role相对应的属性是否相符来决定是否可以通过.

 当然继承的时候可以以不同的方法设置Role的PermissionProp.

现在的DBRole的PermissionProp是从表tblpermissionrole里获得的.

举个例子:

tblRole表: ID Name ……………… 1 财务

tblPermission表 ID Permission SubPermission Property…………………

1 Machine Read Department;Sex

2 Measure null null

tblPermissionRole表 ID Role_id Permission properties

1 1 Machine:Read Department;2;Sex;2

2 2 Measure null

上面的表示中,角色1当department是2并且sex是2时有Machine:Read的权限,

而不管参数如何都有Measure的权限

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值