Spring Security权限控制框架使用指南.docx

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

SpringSecurity权限控制框架使用指南

在常用的后台管理系统中,通常都会有访问权限控制的需求,用于限制不同人员对于接口的访问能力,如果用户不具备指定的权限,则不能访问某些接口。

本文将用waynboot-mall项目举例,给大家介绍常见后管系统如何引入权限控制框架SpringSecurity。大纲如下,

一、什么是SpringSecurity

SpringSecurity是一个基于Spring框架的开源项目,旨在为Java应用程序提供强大和灵活的安全性解决方案。SpringSecurity提供了以下特性:

认证:支持多种认证机制,如表单登录、HTTP基本认证、OAuth2、OpenID等。

授权:支持基于角色或权限的访问控制,以及基于表达式的细粒度控制。

防护:提供了多种防护措施,如防止会话固定、点击劫持、跨站请求伪造等攻击。

集成:与Spring框架和其他第三方库和框架进行无缝集成,如SpringMVC、Thymeleaf、Hibernate等。

二、如何引入SpringSecurity

在waynboot-mall项目中直接引入spring-boot-starter-security依赖,

dependencies

dependency

groupIdorg.springframework.boot/groupId

artifactIdspring-boot-starter-security/artifactId

version3.1.0/version

/dependency

/dependencies

三、如何配置SpringSecurity

在SpringSecurity3.0中要配置SpringSecurity跟以往是有些不同的,比如不在继承WebSecurityConfigurerAdapter。在waynboot-mall项目中,具体配置如下,

@Configuration

@EnableWebSecurity

@AllArgsConstructor

@EnableMethodSecurity(securedEnabled=true,jsr250Enabled=true)

publicclassSecurityConfig{

privateUserDetAIlsServiceImpluserDetailsService;

privateAuthenticationEntryPointImplunauthorizedHandler;

privateJwtAuthenticationTokenFilterjwtAuthenticationTokenFilter;

privateLogoutSuccessHandlerImpllogoutSuccessHandler;

@Bean

publicSecurityFilterChainfilterChain(HttpSecurityhttpSecurity)throwsException{

httpSecurity

//cors启用

.cors(httpSecurityCorsConfigurer-{})

.csrf(AbstractHttpConfigurer::disable)

.sessionManagement(httpSecuritySessionManagementConfigurer-{

httpSecuritySessionManagementConfigurer.sessionCreationPolicy(SessionCreationPolicy.STATELESS);

.exceptionHandling(httpSecurityExceptionHandlingConfigurer-{

httpSecurityExceptionHandlingConfigurer.authenticationEntryPoint(unauthorizedHandler);

//过滤请求

.authorizeHttpRequests(authorizationManagerRequestMatcherRegistry-{

authorizationManagerRequestMatcherRegistry

.requestMatchers(/favicon.

文档评论(0)

135****5541 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档