?xml version=\"1.0\" encoding=\"UTF-8\"?>
beans
xmlns=\"\"
xmlns:xsi=\"\"
xsi:schemaLocation=\" /spring-beans-2.0.xsd\">
bean id=\"filterChainProxy\" >
property name=\"filterInvocationDefinitionSource\">
value>
PATTERN_TYPE_APACHE_ANT
/**=httpSessionContextIntegrationFilter,basicProcessingFilter,exceptionTranslationFilter,filterInvocationInterceptor
/value>
/property>
/bean>
bean id=\"httpSessionContextIntegrationFilter\"
>
property name=\"allowSessionCreation\" value=\"false\" />
/bean>
bean id=\"basicProcessingFilter\"
>
property name=\"authenticationManager\" ref=\"authenticationManager\" />
property name=\"authenticationEntryPoint\" ref=\"basicProcessingFilterEntryPoint\" />
/bean>
bean id=\"basicProcessingFilterEntryPoint\"
>
property name=\"realmName\" value=\"Acegi First Demo Realm\" />
/bean>
bean id=\"authenticationManager\"
>
property name=\"providers\">
list>
ref local=\"daoAuthenticationProvider\" />
/list>
/property>
/bean>
bean id=\"daoAuthenticationProvider\"
>
property name=\"userDetailsService\" ref=\"inMemDaoImpl\" />
/bean>
bean id=\"inMemDaoImpl\"
>
property name=\"userMap\">
value>admin=password,ROLE_MANAGER/value>
/property>
/bean>
bean id=\"exceptionTranslationFilter\"
>
property name=\"authenticationEntryPoint\" ref=\"basicProcessingFilterEntryPoint\" />
property name=\"createSessionAllowed\" value=\"false\" />
/bean>
bean id=\"filterInvocationInterceptor\"
>
property name=\"authenticationManager\" ref=\"authenticationManager\" />
property name=\"accessDecisionManager\" ref=\"httpRequestAccessDecisionManager\" />
property name=\"objectDefinitionSource\">
value>
PATTERN_TYPE_APACHE_ANT
/securedpage.jsp=ROLE_ADMIN
/value>
/property>
/bean>
bean id=\"httpRequestAccessDecisionManager\"
>
property name=\"decisionVoters\">
list>
ref bean=\"roleVoter\" />
/list>
/property>
/bean>
bean id=\"roleVoter\" />
bean id=\"authenticationLoggerListener\"
/>
bean id=\"authorizationLoggerListener\"
/>
/beans>
HTTP Basic 认证方式使用 base64 编码方式传送用户名和密码,而 base64 仅仅是一种公开的编码格式而非加密措施,因而如果信道本身不使用 SSL 等安全协议,用户密码较容易被截获。
Form-Based 认证不同于 HTTP Basic 认证,它是 J2EE 对于认证方式的一种扩展。它使用自定义的 HTML 表单(通常为 login.jsp)作为输入用户名和密码的用户界面,最终将用户在表单上填入的用户名/密码提交至服务器。
Form-Based 认证方式在 J2EE 站点中更为常见。这一方面是由于它提供了自定义的用户名密码输入界面;另一方面它的传输也更为安全,通常情况下 login.jsp 会被配置为需要使用 SSL 信道访问,这样在步骤 2、3 中对用户名和密码的传送就被安全信道所保护,而较难被非法截取。本文链接: http://acegi0.immuno-online.com/view-724495.html