广告
返回顶部
首页 > 资讯 > 后端开发 > Python >spring-security关闭登录框的实现示例
  • 931
分享到

spring-security关闭登录框的实现示例

2024-04-02 19:04:59 931人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

事情要从同事的一个项目说起,项目中需要集成公司的单点登录系统,但是无论如何都无法跳转到正常的登录页面。相反,却始终跳转到另外一个登录页面。 但是代码却非常简单,简化一下 @Co

事情要从同事的一个项目说起,项目中需要集成公司的单点登录系统,但是无论如何都无法跳转到正常的登录页面。相反,却始终跳转到另外一个登录页面。

但是代码却非常简单,简化一下


@Controller
public class SecurityTestController {

  @GetMapping("/myLogin")
  public String login() {
    return "login";
  }

  @GetMapping("/")
  public String homePage() {
    return "homePage";
  }
}

发现无论是"/myLogin"还是"/"都绕不过登录,即使打了断点也进入不了两个方法。

由于之前没有接触过securtiy,还以为是公司另外一个登录系统,让同事输入公司域账户和密码,却怎么也无法进入。最后还是同事通过搜索"please sign in" + "spring"的关键词才知道这个是securtiy。

那既然知道是Spring Boot 的security,那要如何登录呢,以及要如何关闭这个登录框呢?

第一个问题,如何登录?

我们从启动日志中,可以看到有一条这样的日志

 

所以,这个就是登录用到的密码。那用户名是什么呢? 这个可以进入UserDetailsServiceAutoConfiguration看看究竟。

然后继续进入SecurityProperties.User看看。

可以从代码中看到,如果不做任何配置,Spring Security的User信息,name是user,而paasWord是UUID,这个会在启动日志中打印。

在登录框中,输入"user" + 日志中的密码,即可正常登录。

定义用户名和密码

对于登录名和密码,可以通过在application.properties文件中指定


spring.security.user.name=admin
spring.security.user.password=admin

第二个问题,有没有办法关闭登录?

关闭自动配置

当我们仅仅引入了Spring Securtiy的Starter,就发现访问会存在输入框。一定是SpringBoot的autoConfig帮我们配置了一些东西。那么可以通过关闭Securtiy的autoConfig关闭登录。

可以在启动类上添加


@SpringBootApplication(exclude = {SecurityAutoConfiguration.class, ManagementWEBSecurityAutoConfiguration.class})

或者是在application.properties文件中添加


spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.security.servlet.SecurityAutoConfiguration,org.springframework.boot.actuate.autoconfigure.security.servlet.ManagementWebSecurityAutoConfiguration

注意到我的项目中,除了SecurityAutoConfiguration被排除掉外,还有ManagementWebSecurityAutonConfiguration被排除,这个类是Actuator引入的。如果项目中有使用Actuator,那么就需要同时排除掉ManagementWebSecurityAutonConfiguration。

定制WebSecurityConfigureAdapter关闭登录框


@Component
public class MySecurtiyConfig extends WebSecurityConfigurerAdapter {

  @Override
  protected void configure(httpsecurity Http) throws Exception {
    // 正常配置其他安全相关的内容

    // 将登录框关闭
    http.fORMLogin().disable();
  }
}

这里推荐使用第二种方式,因为引入Spring-security肯定是有业务需要的,可以定制化登录校验信息。

到此这篇关于spring-security关闭登录框的实现示例的文章就介绍到这了,更多相关spring security关闭登录框内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: spring-security关闭登录框的实现示例

本文链接: https://www.lsjlt.com/news/125490.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • spring-security关闭登录框的实现示例
    事情要从同事的一个项目说起,项目中需要集成公司的单点登录系统,但是无论如何都无法跳转到正常的登录页面。相反,却始终跳转到另外一个登录页面。 但是代码却非常简单,简化一下 @Co...
    99+
    2022-11-12
  • Spring Security实现自动登陆功能示例
    当我们在登录像QQ邮箱这种大多数的网站,往往在登录按键上会有下次自动登录这个选项,勾选后登录成功,在一段时间内,即便退出浏览器或者服务器重启,再次访问不需要用户输入账号密码进行登录,...
    99+
    2022-11-12
  • Spring Security实现统一登录与权限控制的示例代码
    目录项目介绍统一认证中心配置授权服务器配置WebSecurity登录菜单鉴权资源访问的一些配置有用的文档项目介绍 最开始是一个单体应用,所有功能模块都写在一个项目里,后来觉得项目越来...
    99+
    2022-11-13
  • vue关闭浏览器退出登录的实现示例
    目录1、beforeunload事件2、unload事件3、源码部分  项目需要:也在网上找了不少类似的文章,不过用起来多少有点问题,毕竟要适合自己的需求,我这里是vue3适用,理论...
    99+
    2022-11-12
  • spring-boot集成spring-security的oauth2如何实现github登录网站
    这篇文章主要为大家展示了“spring-boot集成spring-security的oauth2如何实现github登录网站”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“spring-boot集...
    99+
    2023-05-30
    spring boot oauth2.0
  • Springboot+Spring Security实现前后端分离登录认证及权限控制的示例代码
    目录前言本文主要的功能 一、准备工作1、统一错误码枚举2、统一json返回体3、返回体构造工具4、pom5、配置文件二、数据库表设计初始化表数据语句三、Spring Sec...
    99+
    2022-11-12
  • Springboot WebFlux集成Spring Security实现JWT认证的示例
    目录1 简介 2 项目整合 2.1 JWT工具类 2.2 JWT的过滤器 2.3 Security的配置 2.4 获取JWT的Controller 3 总结 1 简介 在之前的文章...
    99+
    2022-11-12
  • javaSwing写关闭窗口的提示框实例
    目录javaSwing写关闭窗口的提示框java swing 提示框第一种第二种第三种javaSwing写关闭窗口的提示框 先在该窗体的initUI()中初始化中写一句 // 关...
    99+
    2022-11-12
  • Spring Boot Security实现防重登录及在线总数的方法
    这篇文章主要讲解了“Spring Boot Security实现防重登录及在线总数的方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Spring Boot...
    99+
    2022-10-19
  • layer如何实现登录弹框,登录成功后关闭弹框并调用父窗口功能
    这篇文章主要介绍layer如何实现登录弹框,登录成功后关闭弹框并调用父窗口功能,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!layer是一款近年来备受青睐的web弹层组件,官网地址是...
    99+
    2022-10-19
  • Spring boot security权限管理集成cas单点登录功能的实现
    目录1.Spring boot集成Spring security2.部署CAS server3.配置CAS client挣扎了两周,Spring security的cas终于搞出来了...
    99+
    2022-11-13
  • Spring Security配置多个数据源并添加登录验证码的实例代码
    目录1.配置多个数据源2. 添加登录验证码1.配置多个数据源 多个数据源是指在同一个系统中,用户数据来自不同的表,在认证时,如果第一张表没有查找到用户,那就去第二张表中査询,依次类推...
    99+
    2022-11-13
    Spring Security登录验证码 Spring Security配置多个数据源
  • HTML5实现QQ登录的示例分析
    这篇文章主要介绍了HTML5实现QQ登录的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。<!DOCTYPE html...
    99+
    2022-10-19
  • SpringBoot实现token登录的示例代码
    为什么引入token机制 在进行登录验证时,我们需要session或cookie会话进行验证,客户端包括浏览器、app、微信小程序、公众号,只有浏览器有session和cookie机...
    99+
    2022-11-13
  • go实现服务优雅关闭的示例
    目录为什么需要优雅关闭监控服务退出信号拒绝新请求执行关闭之前的回调等待处理中的请求执行完毕实战支持强制退出为什么需要优雅关闭 什么叫优雅关闭?先说不优雅关闭,就是什么都不管,强制关闭...
    99+
    2023-02-09
    go 服务关闭
  • Django实现简单登录的示例代码
    目录创建django项目使用模型的url.py加载静态文件页面跳转创建数据库模型提交表单提交ajax提交创建django项目 创建项目的命令行语句: django-admin st...
    99+
    2022-11-12
  • React实现登录表单的示例代码
    作为一个Vue用户,是时候扩展一下React了,从引入antd、配置less、router,终于实现了一个简单的登录表单。 代码如下: import React from 'r...
    99+
    2022-11-12
  • Android实现微信登录的示例代码
    目录一、布局界面二、MainActivity.java微信登录的实现与qq登录类似。不过微信登录比较麻烦,需要拿到开发者资质认证,花300块钱,然后应用的话还得有官网之类的,就是比较...
    99+
    2022-11-12
  • SpringBoot实现扫码登录的示例代码
    目录一、首先咱们需要一张表二、角色都有哪些三、接口都需要哪些?四、步骤五、疯狂贴代码Spring Boot中操作WebSocket最近有个项目涉及到websocket实现扫码登录,看...
    99+
    2022-11-13
  • Redis实现登录注册的示例代码
    目录1. 引言2. 流程图及代码实现2.1 生成验证码保存到Redis2.2 登录验证2.3 请求拦截器3. 总结1. 引言 在传统的项目中,用户登录成功,将用户信息保存在sessi...
    99+
    2022-11-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作