在pom.xml中将springsecurity导入后,对于springsecurity会出现三个依赖包:spring-security-web,spring-security-config,spring-security-core.其中spring-security-core包含了核心的认证和访问控制接口,远程支持和基本的API.这些都是任何使用Spring Security的应用程序所需要的。支持独立的应用程序,远程客户端,业务层的方法安全和JDBC用户的提供。所包含的顶级包名有:

org.springframework.security.core

org.springframework.security.access

org.springframework.security.authenticaiton

org.springframework.security.provisioning

对于spring-security-remoting.jar如果不写远程客户端的话,是不需要这个依赖的。

对于spring-security-web.jar:

包含过滤器和相关的web-security的基本代码。无论何时都需要一个servlet API的依赖。如果你想使用Spring Security的web认证服务和URL的访问控制,那么你就需要这个依赖,主要的包是org.springframework.security.web.

对于spring-security-config.jar

包含安全的命名空间解析代码和java配置代码。如果你使用Spring Security的 XML命名空间来作为配置,或者Spring Security的java配置支持,那么你就需要这个依赖。主要的包为:org.springframework.security.config。这个包中class并不能直接在应用程序中使用。

另还有:spring-security-ldap.jar;spring-security-acl.jar;spring-security-cas.jar;spring-security-openid.jar;

spring-security-test.jar

对于使用自定义的java配置,那么自定义的类需要继承WebSecurityConfigurerAdapter.一旦引入SpringSecurity依赖后,所有的访问应用的ApI都需要被认证。Spring Security模块会生成默认的登陆表单。用户可以通过用户名和密码来通过基于表单的认证。

对于HttpSecurity:

WebSecurityConfig仅仅只是包含一些如何让用户认证的信息。之所以Spring Security知道我们想所有的用户都被认证和我们支持表单的认证,是因为我们在WebSecurityConfigurerAdapter中进行了配置,WebSecurityConfigurerAdapter类中有缺省的配置,如果想自定义配置就自定义类并继承WebSecurityConfigurerAdapter。然后重写configure(HttpSecurity http),如下图:

AuthenticationProvider:用户认证时的处理类,如果需要自定义用户认证处理类,则需要实现该接口。

UserDetailsService:用户进行认证时的获取用户信息的服务类,如果想自定义信息服务类,则实现该接口即可。

暂时先写这么多

SpringSecurity简单记录的更多相关文章

  1. JSP简单记录

    JSP,全称是Java Server Page,是运行在服务器端的页面,是建立在Servlet规范的动态网页技术,JSP文件在第一次请求时,会被编译成Servlet,所以JSP也可以看成是运行中的Se ...

  2. OpenCV安装配置的简单记录

    在ubuntu16.04下安装OpenCV 2.4.11的简单记录 1. 安装cmake,执行$apt-get install cmake即可,cmake -version验证 2. 下载OpenCV ...

  3. asp.net 简单记录请求的客户端和服务端 处理时间

    最近项目需要简单记录一下 ajax客户端和服务端处理时间,服务端时间的思路是借用BeginRequest和EndRequest事件,为了不影响现有接口返回的数据格式,因此服务处理时间放在respons ...

  4. PHP 版本简单记录

    PHP 版本简单记录 PHP 博物馆         http://museum.php.net/php5/ PHP 版本发布       https://secure.php.net/release ...

  5. 简单记录一次注入到shell

    0x00 前言 帮朋友之前拿的一个站,有点久了没有完整截图,简单记录一下. 0x01 基础信息 操作系统:win 集成环境:phpstudy 端口开放:82,3306,3389 有phpmyadmin ...

  6. Java-Springboot-集成spring-security简单示例(Version-springboot-2-1-3-RELEASE

    使用Idea的Spring Initializr或者SpringBoot官网下载quickstart 添加依赖 1234 <dependency><groupId>org.sp ...

  7. oracle SCN推进恢复数据库 简单记录

    由于是在内网专用机器上操作,没有日志记录,下面做个简单记录:   前几天某供电局的的一个老数据库存储挂了,数据全部丢失,该库没有开归档,没接备份,怎么恢复? 由于存储损坏严重,从存储恢复不好搞. 好在 ...

  8. SpringSecurity简单使用

    什么是SpringSecurity? Spring Security是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架.它提供了一组可以在Spring应用上下文中配置 ...

  9. SpringBoot整合SpringSecurity简单实现登入登出从零搭建

    技术栈 : SpringBoot + SpringSecurity + jpa + freemark ,完整项目地址 : https://github.com/EalenXie/spring-secu ...

随机推荐

  1. JavaScript 数组去重方法总结

    1.遍历数组法: 这应该是最简单的去重方法(实现思路:新建一新数组,遍历数组,值不在新数组就加入该新数组中) // 遍历数组去重法 function unique(arr){ var _arr = [ ...

  2. php list()函数

    说明: (PHP 4, PHP 5, PHP 7) list — 把数组中的值赋给一组变量 像 array() 一样,这不是真正的函数,而是语言结构. list() 可以在单次操作内就为一组变量赋值. ...

  3. mysql 插入中文字段报错 "Incorrect string value: '\\xE6\\xB5\\x8B\\xE8\\xAF\\x95...' for column 'title' at row 1"

    1. 查看一个 database 或一个 table 的编码show create database mytestdb;show create table testapp_article; mysql ...

  4. Groovy 语法学习

    一.配置 Groovy 环境: 下载 Groovy(Groovy 依赖 Java,所以需要 JDK 环境):http://www.groovy-lang.org/download.html 配置环境变 ...

  5. 二、volatile关键字 - 内存可见性

    1.内存可见性 ​ (程序在运行时,jvm会为每一个执行任务的线程都分配一个独立的缓存,用于提高效率) ​ 我觉得可以这样来理解: ​ 内存:啥是内存?就是可以理解成电脑当中的内存条,程序创建个变量, ...

  6. webpack 4.X 基础编译

    webpack4.x的打包已经不能用webpack 文件a 文件b的方式,而是直接运行webpack --mode development或者webpack --mode production,这样便 ...

  7. android studio出现offline情况

    1.检查是否打开开发者选项 2.检查手机是否处于传输文件模式

  8. vfile.hpp

    //vov #ifndef VFILE_HPP #define VFILE_HPP #include <cstdio> #include <unistd.h> #include ...

  9. 使用vue+iview实现上传文件及常用的下载文件的方法

    首先说明一下,我们这次主要用的还是iview的upload上传组件,下面直接上代码 <Upload ref="upload" multiple='true' //是否支持多文 ...

  10. C#通过DocX创建word

    网上有一些基础的东西,但是比如插入图片,就没有找到方案,最终自己摸索出来的. 1.首先通过Nuget获取引用,关键字:“DocX” 2.示例代码 class Program { static void ...