Acegi-security-samples-tutorial-1.0.7.zip 实例学习笔记

eclipse环境下新建一个web project项目AcegiTest,把Acegi-security-samples-tutorial-1.0.7.zip 中的代码放入项目中的对应目录下:

IE地址栏输入:http://localhost/AcegiTest/

转到index.jsp 页面:

主页

任何人可浏览此页面。

安全页面

超级安全页面

1)点“安全页面”则进入登录页面acegilogin.jsp<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

peter登录是则显示:

抱歉,您登录失败,请重新登录!
原因: User is disabled

当其他用户登录时则进入安全页面,点“退出”转到主页,再点其他链接则自动转到登录页面。

2)点“超级安全页面”则进入登录页面acegilogin.jsp

peter登录是则显示:

抱歉,您登录失败,请重新登录!
原因: User is disabled

当普通用户登录时则显示:

对不起,您无权访问!

org.acegisecurity.AccessDeniedException: Access is denied

Authentication object as a String: org.acegisecurity.providers.UsernamePasswordAuthenticationToken@6178e6d6: Username: org.acegisecurity.userdetails.User@bc43000: Username: scott; Password: [PROTECTED]; Enabled: true; AccountNonExpired: true; credentialsNonExpired: true; AccountNonLocked: true; Granted Authorities: ROLE_USER; Password: [PROTECTED]; Authenticated: true; Details: org.acegisecurity.ui.WebAuthenticationDetails@fffe3f86: RemoteIpAddress: 127.0.0.1; SessionId: 936492B5C00BF262EF5DBC490C64C190; Granted Authorities: ROLE_USER

当超级用户登录时,则转到非常安全页面。

实现该功能主要是:

<bean id="filterInvocationInterceptor" class="org.acegisecurity.intercept.web.FilterSecurityInterceptor">

<property name="authenticationManager" ref="authenticationManager"/>

<property name="accessDecisionManager">

<bean class="org.acegisecurity.vote.AffirmativeBased">

<property name="allowIfAllAbstainDecisions" value="false"/>

<property name="decisionVoters">

<list>

<bean class="org.acegisecurity.vote.RoleVoter"/>

<bean class="org.acegisecurity.vote.AuthenticatedVoter"/>

</list>

</property>

</bean>

</property>

<property name="objectDefinitionSource">

<value><![CDATA[

CONVERT_URL_TO_LOWERCASE_BEFORE_COMPARISON

PATTERN_TYPE_APACHE_ANT

/secure/extreme/**=ROLE_SUPERVISOR

/secure/**=IS_AUTHENTICATED_REMEMBERED

/**=IS_AUTHENTICATED_ANONYMOUSLY

]]></value>

</property>

</bean>

后面章节我将对其中的代码进行解析。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值