springboot+maven整合spring security已经做了两次了,然而还是不太熟悉,这里针对后台简单记录一下需要做哪些事情,具体的步骤怎么操作网上都有,不再赘述。
1.pom.xml中添加spring security的起步依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
2.创建spring security的配置类,继承WebSecurityConfigurerAdapter类,重写里面的configure(HttpSecurity http)和configure(AuthenticationManagerBuilder auth)两个方法。这两个方法即自定义配置的内容。
3.对于configure(AuthenticationManagerBuilder auth)方法,有从内存获取和从数据库获取两种方式。如果采用后者,需要实现UserDetailsService接口,并将此实现类的对象传入auth.userDetailsService()方法中,后面跟上加密方式(不跟上加密方式可能会报java.lang.IllegalArgumentException: There is no PasswordEncoder mapped for the id "null"的错误),实例如下:
@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
MyUserDetailsService userService = new MyUserDetailsService();
auth.userDetailsService(userService).passwordEncoder(new BCryptPasswordEncoder());
}

另外,之前版本的springboot(2.0之前)可以在application.properties中使用security.basic.enable=false属性来禁用默认验证,新版本的springboot(2.0以上)移除了这一属性。spring security似乎是自行判断是启用默认配置还是自定义配置。在自定义配置的过程中如果只重写了configure(HttpSecurity http)方法,虽然此方法的自定义配置会起作用,但是登录验证依然是默认的,即用户名为user,密码为自动生成,后台会打印出来(这是默认情况,也可以自行设置),此时需要实现configure(AuthenticationManagerBuilder auth)方法来自定义验证策略。

ps:技巧是在一遍又一遍的重复中得以掌握,又在一遍又一遍的重复中得以精深。

springboot+maven整合spring security的更多相关文章

  1. SpringBoot学习(二)—— springboot快速整合spring security组件

    Spring Security 简介 spring security的核心功能为认证(Authentication),授权(Authorization),即认证用户是否能访问该系统,和授权用户可以在系 ...

  2. springBoot整合spring security实现权限管理(单体应用版)--筑基初期

    写在前面 在前面的学习当中,我们对spring security有了一个小小的认识,接下来我们整合目前的主流框架springBoot,实现权限的管理. 在这之前,假定你已经了解了基于资源的权限管理模型 ...

  3. springBoot整合spring security+JWT实现单点登录与权限管理--筑基中期

    写在前面 在前一篇文章当中,我们介绍了springBoot整合spring security单体应用版,在这篇文章当中,我将介绍springBoot整合spring secury+JWT实现单点登录与 ...

  4. SpringBoot安全篇Ⅵ --- 整合Spring Security

    知识储备: 关于SpringSecurity的详细学习可以查看SpringSecurity的官方文档. Spring Security概览 应用程序的两个主要区域是"认证"和&qu ...

  5. SpringBoot整合Spring Security

    好好学习,天天向上 本文已收录至我的Github仓库DayDayUP:github.com/RobodLee/DayDayUP,欢迎Star,更多文章请前往:目录导航 前言 Spring Securi ...

  6. Spring Boot整合Spring Security

    Spring Boot对于该家族的框架支持良好,但是当中本人作为小白配置还是有一点点的小问题,这里分享一下.这个项目是使用之前发布的Spring Boot会员管理系统重新改装,将之前filter登录验 ...

  7. 【手摸手,带你搭建前后端分离商城系统】03 整合Spring Security token 实现方案,完成主业务登录

    [手摸手,带你搭建前后端分离商城系统]03 整合Spring Security token 实现方案,完成主业务登录 上节里面,我们已经将基本的前端 VUE + Element UI 整合到了一起.并 ...

  8. Springboot WebFlux集成Spring Security实现JWT认证

    我最新最全的文章都在南瓜慢说 www.pkslow.com,欢迎大家来喝茶! 1 简介 在之前的文章<Springboot集成Spring Security实现JWT认证>讲解了如何在传统 ...

  9. Maven 整合 spring profile实现多环境自动切换

    Maven 整合 spring profile实现多环境自动切换 时间:2014-03-19 15:32来源:Internet 作者:Internet 点击:525次 profile主要用在项目多环境 ...

随机推荐

  1. git bash的一些使用经验

    1.最开始使用git的时候, git remote -v 查看远程仓库 报了一个错误fatal: not a git repository (or any of the parent director ...

  2. day02python基本数据类型

    python基本数据类型   基本数据类型(int,bool,str) 1.基本数据数据类型: int 整数 str 字符串. 一般不存放大量的数据 bool 布尔值. 用来判断. True, Fal ...

  3. Kong(v1.0.2)认证

    介绍 上游服务(api或微服务)的流量通常由各种Kong的authentication plugins的应用程序和配置控制.由于Kong的服务实体表示您自己的上游服务的一对一映射,所以最简单的场景是在 ...

  4. Android编程-Activity

    重要的回调函数: onCreate():初始化activity要用的其他的组件(可以是其他的activity和contentprovider之类).调用setContentView(),设定本Acti ...

  5. Java中的io流学习(了解四大基类和基本步骤)

    Java中io流四大基类及io流操作四大基本步骤 io流:(input/output)即输入输出流.面向对象的思想之一是面向接口编程,面向父类编程,也就是多态.所以学好基类(父类)很重要. 分类 按处 ...

  6. 4、hello world

    package com.ourteam.firstexample; import io.netty.bootstrap.ServerBootstrap;import io.netty.channel. ...

  7. oracle、grid 用户ID

    oracle.grid 用户ID [root@db-rac02 rules.d]# id oracle uid=54321(oracle) gid=54321(oinstall) groups=543 ...

  8. java程序中的乱码方案

    1. 万能方式,既能够解决POST请求乱码,又能够解决GET请求乱码 操作方法:先将服务器中接收到的数据采用ISO-8859-1的方式解码,回归原始状态, 再给定一种支持简体中文的编码方式重新编码组装 ...

  9. flask+redis实现抢购(秒杀)功能

    今天面试了 一家非常高大上的公司,问了我关于redis的实用性问题,但是答的不是很好,所以下午通过再次学习 redis,实现相关实用性功能的一种. 对于抢购功能,难点在于 抢购时 由于高并发请求,导致 ...

  10. 魔力Python--经典SQL语法大全

    具体转载自哪里,我也忘记了... 一.基础 1.说明:创建数据库 CREATE DATABASE database-name 2.说明:删除数据库 drop database dbname 3.说明: ...