论坛首页 Java企业应用论坛

请教Acegi的投票策略问题

浏览 3642 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2006-10-09  
   Acegi对用户的权限使用投票策略,投票的结果返回以int类型返回,分别是AccessDecisionVoter三个静态变量ACCESS_ABSTAIN,,ACCESS_DENIED和ACCESS_GRANTED,也即弃权,拒绝,同意。
   
   在网上找到了一个资料说明三者分别的返回条件:

引用

    RoleVoter类是一个Acegi安全系统AccessDecisionVoter接口的实现。如果ConfigAttribute以ROLE_开头,RoleVoter则进行投票。如果GrantedAuthority的getAutority方法的String返回值匹配一个或多个以ROLE_开头的ConfigAttribute,则投票通过,否则不通过。如果没有以ROLE_开头的ConfigAttribute,RoleVoter则弃权。

   可是看起来,不通过和弃权是一样的,不知道如何区分这两者的不同,请知道的前辈指点一下,谢谢!
   发表时间:2006-10-10  
引用
GrantedAuthority的getAutority方法的String返回值匹配一个或多个以ROLE_开头的ConfigAttribute,则投票通过,否则不通过。

这句话有误,以ROLE_开头只是应用自定义一规则,作为是否需要进行投票判断的一个规则,不匹配的话根本就没有进行任何投票操作

而ACCESS_ABSTAIN,,ACCESS_DENIED和ACCESS_GRANTED的作用就看
ConsensusBased,UnanimousBased,AffirmativeBased几个类的描述
0 请登录后投票
   发表时间:2006-10-10  
stamen 写道
   Acegi对用户的权限使用投票策略,投票的结果返回以int类型返回,分别是AccessDecisionVoter三个静态变量ACCESS_ABSTAIN,,ACCESS_DENIED和ACCESS_GRANTED,也即弃权,拒绝,同意。
   
   在网上找到了一个资料说明三者分别的返回条件:

引用

    RoleVoter类是一个Acegi安全系统AccessDecisionVoter接口的实现。如果ConfigAttribute以ROLE_开头,RoleVoter则进行投票。如果GrantedAuthority的getAutority方法的String返回值匹配一个或多个以ROLE_开头的ConfigAttribute,则投票通过,否则不通过。如果没有以ROLE_开头的ConfigAttribute,RoleVoter则弃权。

   可是看起来,不通过和弃权是一样的,不知道如何区分这两者的不同,请知道的前辈指点一下,谢谢!


投票拒绝代表投票者的立场是拒绝访问

弃权(默认是拒绝访问)可以设置为可以访问(即默许)
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics