SpringSecurity6从入门到实战之SpringSecurity快速入门

392 阅读1分钟

SpringSecurity6从入门到实战之SpringSecurity快速入门

环境准备

依赖版本号
springsecurity6.0.8
springboot3.0.12
JDK17

这里尽量与我依赖一致,免得在学习过程中出现位置的bug等

创建工程

image.png

这里直接选择springboot初始化快速搭建工程,导入对应的jdk17进行创建

image.png

直接勾选一个web即可,上方Springboot版本号如果没有3.0.12可以随便选哥,等项目初始化结束直接在pom.xml文件中修改即可

运行初始化工程

这里贴下目前pom.xml的依赖,可能Spring boot生成的依赖会导致这里无法下载springboot相关依赖(下载依赖无影响就可以忽略这条)

?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>3.0.12</version>
        <relativePath/>
        <!--  lookup parent from repository  -->
    </parent>
    <groupId>com.example</groupId>
    <artifactId>ss6-1</artifactId>
    <version>0.0.1-SNAPSHOT</version>
​
    <properties>
        <java.version>17</java.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
</project>

创建一个测试接口hello

image.png

这里过于简单不贴代码只展示截图了

运行项目

image.png

测试接口是否成功

image.png

引入SpringSecurity

pom.xml文件加入SpringSecurity

  <!--  SpringSecurity依赖  -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-security</artifactId>
        </dependency>

直接运行可以发现控制台打印了俩句额外的日志

image.png

再次访问/hello测试接口,可以发现路径被转到了/login而且还会出现一个登录的界面 image.png

这里就是SpringSecurity的强大之处了,无需进行任何配置即可完成权限控制中的认证部分,而且自带了一个简单的登录页面

image.png

进行用户登录,用户名为user,密码为我们刚刚在控制台上打印的内容即可进行登录 image.png

关于账号密码错误这种问题我就不在这里进行一一演示了,当我们访问任何资源时都需要进行