当前位置: 首页 > wzjs >正文

北京建站abcseo关键词优化费用

北京建站abc,seo关键词优化费用,做自己的彩票网站,建展机械有限公司Spring Security 使用教程 Spring Security 是 Spring 提供的强大安全框架,主要用于认证(Authentication)与授权(Authorization)。本教程将从零开始,介绍如何使用 Spring Security 实现基本的安全控制。 一…

Spring Security 使用教程

Spring Security 是 Spring 提供的强大安全框架,主要用于认证(Authentication)与授权(Authorization)。本教程将从零开始,介绍如何使用 Spring Security 实现基本的安全控制。


一、Spring Security 基础概念

  • 认证(Authentication):验证用户身份是否合法。
  • 授权(Authorization):验证用户是否有权限访问资源。
  • 过滤器链(FilterChain):Spring Security 利用一系列过滤器实现安全逻辑。

二、快速开始

1. 添加依赖

pom.xml 中引入:

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-security</artifactId>
</dependency>

三、默认登录功能体验

添加依赖后,访问任意接口时会自动跳转到登录页面,默认用户名为 user,密码在控制台中输出。


四、自定义用户与密码

application.yml 中配置:

spring:security:user:name: adminpassword: 123456

五、自定义 Security 配置类

@Configuration
@EnableWebSecurity
public class SecurityConfig {@Beanpublic SecurityFilterChain filterChain(HttpSecurity http) throws Exception {http.authorizeHttpRequests(auth -> auth.requestMatchers("/public/**").permitAll()  // 允许访问的路径.anyRequest().authenticated()).formLogin(Customizer.withDefaults()).logout(logout -> logout.permitAll());return http.build();}
}

六、自定义用户认证逻辑

1. 自定义 UserDetailsService

@Service
public class CustomUserDetailsService implements UserDetailsService {@Overridepublic UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {if ("admin".equals(username)) {return User.builder().username("admin").password(new BCryptPasswordEncoder().encode("123456")).roles("USER").build();}throw new UsernameNotFoundException("用户不存在");}
}

2. 注入 UserDetailsService 到配置类

@Bean
public AuthenticationManager authenticationManager(HttpSecurity http, CustomUserDetailsService userDetailsService) throws Exception {return http.getSharedObject(AuthenticationManagerBuilder.class).userDetailsService(userDetailsService).passwordEncoder(new BCryptPasswordEncoder()).and().build();
}

七、常用配置说明

配置说明
permitAll()所有人可访问
authenticated()登录用户可访问
hasRole("ADMIN")拥有角色 ADMIN 才能访问
formLogin()启用表单登录
httpBasic()启用 HTTP Basic 登录
csrf().disable()关闭 CSRF 保护(开发环境)

八、整合前后端分离项目

配置跨域和关闭默认登录页面:

http.csrf().disable().cors(Customizer.withDefaults()).formLogin().disable();

在前端登录时使用 /login 接口 + JSON 请求体 + UsernamePasswordAuthenticationFilter

也可以自定义登录接口,手动调用 AuthenticationManager.authenticate() 完成认证。


九、总结

Spring Security 提供了完善的安全体系,可灵活配置认证与授权。通过简单的配置,就能快速构建一个安全的 Web 应用。

推荐结合 OAuth2、JWT、RBAC 等深入实践,提高安全策略的精细化程度。

如需了解更多,可参考官网文档:https://docs.spring.io/spring-security/

http://www.dtcms.com/wzjs/42662.html

相关文章:

  • 网站建设会计科目seo推广顾问
  • 做网站的app官网优化包括什么内容
  • 网站建设mus18网络营销的职能有哪些
  • 怎样做下载网站怎么做盲盒
  • 建站公司刚起步怎么接单2021百度新算法优化
  • 网页超链接怎么做外贸seo网站建设
  • 郑州专业做网站企业网络营销推广方案模板
  • asp政府单位网站源码程序阿里云域名注册
  • 网站规划说明中国十大it培训机构排名
  • 中国纪检监察报社社长长沙网站seo推广公司
  • 美好乡村建设网站线上营销怎么做
  • 移动营销型网站建设贴吧aso优化贴吧
  • 天津做网站制作公司做seo需要哪些知识
  • 租用网站服务器今日国际新闻10条
  • 东莞回收网站设计如何推广网址链接
  • 网泰网站建设网站免费下载安装
  • 网络营销方案300字windows优化大师有用吗
  • 天津建设厅 注册中心网站目前病毒的最新情况
  • 上海最新注册企业优化推广排名网站教程
  • 隆回网站建设制作seo软件推荐
  • 模板网站制作b2b免费推广平台
  • 网站csv导入农大南路网络营销推广优化
  • 英文网站模板下载广州seo公司
  • 黄山网站建设哪家强关键词优化软件哪家好
  • 特步的网站建设策划我为什么不建议年轻人做销售
  • 视频网站开发视频教程西地那非片能延时多久
  • 怎么做网站模块网上在哪里打广告最有效
  • 北京海淀建设工程律师推荐长春seo网站管理
  • 网站建设b2b建站cms
  • 视频多平台发布网站优化哪个公司好