67,513
社区成员
发帖
与我相关
我的任务
分享
<security:global-method-security pre-post-annotations="enabled"/>
<!--
http:security:权限设置,none,排除资源
http:auto-config:是否自动配置
设置为true时框架会提供默认的一些配置,例如提供默认的登录页面、登出处理等
设置为false时需要显示提供登录表单配置,否则会报错
use-expressions:用于指定intercept-url中的access属性是否使用表达式(SpEL表达式)
-->
<!--1.配置不需要授权访问的资源-->
<!-- 2.配置需要授权访问的资源及访问角色及权限-->
<security:http auto-config="true" use-expressions="true">
<!---自定义登录配置-->
<security:form-login login-page="http://localhost:8080/pages/login.html"
login-processing-url="/sec/login.do"
authentication-failure-forward-url="/user/loginFail.do"
authentication-success-forward-url="/user/loginSuccess.do"/>
<!--访问拒绝处理器-->
<!--
logout:退出登录
logout-url:退出登录操作对应的请求路径
logout-success-url:退出登录后的跳转页面
-->
<security:logout logout-url="/sec/logout.do"
logout-success-url="http://localhost:8080/pages/login.html"
invalidate-session="true"/>
<!--
csrf:对应CsrfFilter过滤器
disabled:如果使用自定义登录页面需要关闭此项,否则登录操作会被禁用(403)
-->
<security:csrf disabled="true"/>
</security:http>
<!-- 3.配置认证授权管理器(认证管理者、认证提供者、认证对象)-->
<security:authentication-manager>
<!--
authentication-provider:认证提供者,执行具体的认证逻辑
-->
<security:authentication-provider user-service-ref="securityUserDetailsService">
<security:password-encoder ref="passwordEncoder"/>
</security:authentication-provider>
</security:authentication-manager>
<bean id="securityUserDetailsService" class="com.itheima.health.security.SecurityUserDetailsService"/>
<!--配置密码加密对象-->
<bean class="org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder" id="passwordEncoder"/>