SpringSecurity入门demo(一)集成与默认认证

这篇具有很好参考价值的文章主要介绍了SpringSecurity入门demo(一)集成与默认认证。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、集成与默认认证:

1、说明:在引入 Spring Security 项目之后,没有进行任何相关的配置或编码的情况下,Spring Security 有一个默认的运行状态,要求在经过 HTTP 基本认证后才能访问对应的 URL 资源,其默认使用的用户名为 user, 密码则是动态生成并打印到控制台的一串随机码。

2、demo验证:

(1)pom:只需要pom添加相关依赖,即完成默认集成功能

<?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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.demo.security</groupId>
    <artifactId>security-demo</artifactId>
    <version>1.0-SNAPSHOT</version>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.14.RELEASE</version>
    </parent>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-aop</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.security</groupId>
            <artifactId>spring-security-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.security</groupId>
            <artifactId>spring-security-config</artifactId>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
    
</project>

(2)配置文件:

server.port=8089
//springboot2.0之后的路径配置写法
server.servlet.context-path=/securityDemo

(3)启动类:

@SpringBootApplication
public class StartApplication {
    public static void main(String args[]){
        SpringApplication.run(StartApplication.class,args);
    }
}

(4)controller:

@RestController
@RequestMapping("/user")
public class UserController {

    @RequestMapping("/test")
    public String test(){
        return "这是user test";
    }
}

2、默认配置:

(1)启动项目,可以看到后台打印

Using generated security password: 4f393758-019f-4084-8ddf-f387471edae6

SpringSecurity入门demo(一)集成与默认认证,SpringSecurity+JWT+VUE,java

(2)浏览器访问拟好的/user/test接口:http://localhost:8089/securityDemo/user/test

发现自动重定向到http://localhost:8089/login并且弹出登陆表单

SpringSecurity入门demo(一)集成与默认认证,SpringSecurity+JWT+VUE,java

用户名输入user,密码输入刚才控制台打印的一串密码,点击登陆后自动重定向:

SpringSecurity入门demo(一)集成与默认认证,SpringSecurity+JWT+VUE,java

如果输入错误的用户名或者密码,会自动跳转到error页面

SpringSecurity入门demo(一)集成与默认认证,SpringSecurity+JWT+VUE,java

3、指定身份:在 HTTP 基本认证中,用户名和密码都是可以配置的,最常见的就是在 resources 下的配置文件中修改,

重新启动程序,发现控制台不再打印默认密码串了,此时使用自定义的用户名和密码即可登录。

二、弊端:事实上,绝大部分 Web 应用都不会选择 HTTP 基本认证这种认证方式,安全性差、无法携带 cookie 、灵活性不足。通常选择表单认证,自己实现表单登录页和验证逻辑,从而提高安全性。文章来源地址https://www.toymoban.com/news/detail-784383.html

到了这里,关于SpringSecurity入门demo(一)集成与默认认证的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【SpringSecurity】十一、SpringSecurity集成JWT实现token的方法与校验

    添加JWT的maven依赖: application.yaml中配置密钥的值,方便代码中引用和后续更改: 这里的命名改为JWTService好点,Utils命名似乎偏静态方法一点。 再贴一下下统一结果类的定义: 下面是安全用户类,用于在数据库的用户对象类SysUser和返给框架的官方对象类UserDetails之间做过渡转

    2024年02月10日
    浏览(41)
  • 权限管理 springboot集成springSecurity Oauth2 JWT

    目录 一、SpringSeurity的基础操作 1、引入主要依赖 2、加密器 3、实现自定义登录逻辑 4、访问限制 5、自定义异常处理  6、通过注解的方式配置访问控制 二、Auth2认证方案 1、什么是Auth2认证 2、Oauth2最常用的授权模式  3、依赖引入 4、添加配置类 5、测试 6、存在到Redis里,后续

    2023年04月14日
    浏览(40)
  • Gateway+Springsecurity+OAuth2.0+JWT 实现分布式统一认证授权!

    目录 1. OAuth2.0授权服务 2. 资源服务 3. Gateway网关 4. 测试   在SpringSecurity+OAuth2.0 搭建认证中心和资源服务中心-CSDN博客 ​​​​​​ 基础上整合网关和JWT实现分布式统一认证授权。   大致流程如下: 1、客户端发出请求给网关获取令牌 2、网关收到请求,直接转发给授权服务

    2024年01月24日
    浏览(51)
  • 权限认证SpringCloud GateWay、SpringSecurity、OAuth2.0、JWT一网打尽!

    1.它是如何工作的? ​ 客户端向 Spring Cloud Gateway 发出请求。如果Gateway处理程序映射确定一个请求与路由相匹配,它将被发送到Gateway Web处理程序。这个处理程序通过一个特定于该请求的过滤器链来运行该请求。过滤器被虚线分割的原因是,过滤器可以在代理请求发送之前和

    2024年04月08日
    浏览(44)
  • Spring Boot 整合SpringSecurity和JWT和Redis实现统一鉴权认证

    本文主要讲了Spring Security文章,如果有什么需要改进的地方还请大佬指出⛺️ 🎬作者简介:大家好,我是青衿🥇 ☁️博客首页:CSDN主页放风讲故事 🌄每日一句:努力一点,优秀一点 Spring Security Spring Security是一个强大且高度可定制的身份验证和访问控制框架。它是保护基

    2024年02月05日
    浏览(46)
  • [Vue]之Jwt的入门和Jwt工具类的使用及Jwt集成spa项目

             JWT,全称为 JSON Web Token,是一种用于在 网络应用之间传递信息的标准方法 。它是 基于 JSON 格式定义的一种简洁且自包含的方式 ,可以安全地在 用户和服务之间传输声明信息 ①简洁性 : JWT 的格式简洁且体积小,可以方便地在网络请求的头部、参数或者正文中传

    2024年02月08日
    浏览(38)
  • 【SpringBoot】集成SpringSecurity+JWT实现多服务单点登录,原来这么easy

    Spring Boot+Spring Security+JWT实现单点登录 介绍: 单点登录(SingleSignOn,SSO) ,当用户在身份 认证服务器 上登录一次以后,即可 获得访问单点登录系统中其他关联系统和应用软件的权限 ,同时这种实现是不需要管理员对用户的登录状态或其他信息进行修改的,这意味着在多个应用

    2024年02月02日
    浏览(44)
  • SpringBoot 集成 SpringSecurity + MySQL + JWT 附源码,废话不多直接盘

    SpringBoot 集成 SpringSecurity + MySQL + JWT 无太多理论,直接盘 一般用于Web管理系统 可以先看 SpringBoot SpringSecurity 基于内存的使用介绍 本文介绍如何整合 SpringSecurity + MySQL + JWT 数据库脚本:https://gitee.com/VipSoft/VipBoot/blob/develop/vipsoft-security/sql/Security.sql 常规权限管理数据结构设计,

    2024年02月02日
    浏览(36)
  • SpringSecurity入门demo(四)授权

    一、授权demo: 1、资源权限: 2、资源权限控制:在配置文件的configure(HttpSecurity http)验证规则方法中添加权限控制: 这里用的是hasAuthority / hasAnyAuthority,资源匹配,也可以使用角色匹配。 3、身份认证 4、授权: 最后启动项目测试: (1)无需权限校验,如这里/user/**接口,

    2024年02月01日
    浏览(23)
  • SpringBoot集成SpringSecurity从0到1搭建权限管理详细过程(认证+授权)

    最近工作需要给一个老系统搭建一套权限管理,选用的安全框架是SpringSecurity,基本上是结合业务从0到1搭建了一套权限管理,然后想着可以将一些核心逻辑抽取出来写一个权限通用Demo,特此记录下。 Spring Security是 Spring家族中的一个安全管理框架。相比与另外一个安全框架

    2024年02月04日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包