首页 > 其他分享 >Spring Security 认证,登陆拦截体验

Spring Security 认证,登陆拦截体验

时间:2024-01-23 14:47:50浏览次数:35  
标签:Spring boot 认证 api Security hello

使用Spring Security框架之前,我们的应用api是谁都可以访问的

引入Spring Security之前 的 Spring Boot应用

1.创建一个Spring boot application, 有如下api

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class HelloController {
   
    @GetMapping("/hello")
    public String hello() {
        return "hello";
    }
}
View Code

2.启动应用 

3.测试

访问http://localhost:8080/hello,即可得到hello api 的返回

 

使用Spring Boot + Spring Security

1.引入Spring Security 依赖,加入Spring Security 依赖后,项目的所有接口都会被自动保护起来,需要登录认证才能访问接口API。

它还会生成一个用户,其密码是随机生成的,并记录在控制台中,可用于使用表单或基本认证(basic authentication)进行认证

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-security</artifactId>
</dependency>
View Code

2.启动应用

应用启动时,控制台会打印出随机生成的密码, 默认情况下登录的用户名是 user

3.测试

当用户访问接口http://localhost:8080/hello, 会跳转到登录页面,输入用户名 user, 和 如上password 后,才会得到hello api的正常返回。

标签:Spring,boot,认证,api,Security,hello
From: https://www.cnblogs.com/dreamstar99/p/16738118.html

相关文章

  • SpringBoot是什么
    SpringBoot帮我们简单、快速地创建一个独立的、生产级别的Spring应用(说明:SpringBoot底层是Spring)大多数SpringBoot应用只需要编写少量配置即可快速整合Spring平台以及第三方技术特性:快速创建独立Spring应用SSM:导包、写配置、启动运行直接嵌入Tomcat、J......
  • Spring Security
    SpringSecurity是什么Springsecurity是针对Spring项目的安全框架,可以实现强大的Web安全控制,SpringSecurity可以做什么主要是实现两个目标:认证和授权认证Authentication:身份验证通常通过用户名和密码,验证用户身份授权Authorization:授权发生在系统成功验证用户身份后,会......
  • Spring Security 权限管理框架
    1.SpringSecurity是什么Springsecurity是针对Spring项目的安全框架,可以实现强大的Web安全控制,2.SpringSecurity可以做什么,核心的功能主要是实现两个目标:认证和授权认证Authentication:身份验证通常通过用户名和密码,验证用户身份,登录授权Authorization:授权发生在系统成......
  • 深入了解Spring Boot自动装配
    SpringBoot的自动装配是一项强大的功能,能够简化应用程序的配置和开发过程。让我们通过一系列详细的例子来深入了解这一特性。1.什么是自动装配?在SpringBoot中,自动装配是指框架根据应用程序的依赖关系,自动配置和装配相应的Bean,而无需手动设置。这使得开发者可以更专注于业务逻......
  • 第三章 Spring Boot 整合 Kafka消息队列 消息者
    ​ 前言        Kafka是一个消息队列产品,基于Topicpartitions的设计,能达到非常高的消息发送处理性能。本文主是基于SpirngBoot封装了Apache的Kafka-client,用于在SpringBoot项目里快速集成kafka。 一、Kafka是什么?ApacheKafka是分布式发布-订阅消息系统。......
  • spring学习笔记
    目录IoC概念DI(依赖注入)SpringDemo项目新建maven项目加入依赖定义类:接口和实现类Spring的配置文件Spring容器创建对象使用容器中的对象问题1:spring创建对象,调用是类的那个方法问题2:spring是在什么时候创建对象问题3:spring容器创建对象,一次创建几个获取容器中对象的信息spri......
  • Spring RestTemplate redirect 302
     TheredirectionisfollowedautomaticallyiftherequestisaGETrequest(see thisanswer).TomakeithappenonPOSTrequests,oneoptionmightbetouseadifferentrequestfactory,like HttpComponentsClientHttpRequestFactory,andsetittousean Ht......
  • 关于springboot 域认证
    最近项目,客户要求实现域认证,然后登录。网上资料自己整理一下,以备后续使用;springboot域认证,我采用的是ldap方式认证。1.引入插件:<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-ldap</artifactId......
  • shardingsphere springboot application.yml配置
    shardingsphere springbootapplication.yml配置 spring:sharding-sphere:datasource:names:mastermaster:type:com.zaxxer.hikari.HikariDataSourcedriver-class-name:com.mysql.cj.jdbc.Driverjdbc-url:jdbc:mysql:......
  • 使用Go进行HTTP客户端认证
    在Go语言中,HTTP客户端认证可以通过net/http包来实现。下面是一个简单的示例,展示如何使用Go进行HTTP客户端认证。首先,确保你已经安装了Go语言环境,并设置好了相关的环境变量。Go语言中的HTTP客户端认证主要涉及到设置请求头中的认证信息。以下是一个简单的示例代码,展示了如何使用Go发......