Spring Security中使用authorizeRequests遇到的问题小结

 更新时间:2023年02月03日 09:11:39   作者:泠青沼~  
Spring 是非常流行和成功的 Java 应用开发框架,Spring Security 正是 Spring 家族中的成员,这篇文章主要介绍了Spring Security中使用authorizeRequests遇到的问题,需要的朋友可以参考下

SpringSecurity 框架简介

Spring 是非常流行和成功的 Java 应用开发框架,Spring Security 正是 Spring 家族中的成员。Spring Security 基于 Spring 框架,提供了一套 Web 应用安全性的完整解决方案。
正如你可能知道的关于安全方面的两个主要区域是“认证”和“授权”(或者访问控制),一般来说,Web 应用的安全性包括用户认证(Authentication)和用户授权(Authorization)两个部分,这两点也是 Spring Security 重要核心功能。

1、用户认证指的是:验证某个用户是否为系统中的合法主体,也就是说用户能否访问该系统。用户认证一般要求用户提供用户名和密码。系统通过校验用户名和密码来完成认证过程。通俗点说就是系统认为用户是否能登录。

2、用户授权指的是验证某个用户是否有权限执行某个操作。在一个系统中,不同用户所具有的权限是不同的。比如对一个文件来说,有的用户只能进行读取,而有的用户可以进行修改。一般来说,系统会为不同的用户分配不同的角色,而每个角色则对应一系列的权限。通俗点讲就是系统判断用户是否有权限去做某些事情。

🌟 一、运行项目报错

 at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:658) ~[spring-beans-5.3.22.jar:5.3.22]
 at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:486) ~[spring-beans-5.3.22.jar:5.3.22]
 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352) ~[spring-beans-5.3.22.jar:5.3.22]
 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195) ~[spring-beans-5.3.22.jar:5.3.22]
 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.22.jar:5.3.22]
 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.22.jar:5.3.22]
 at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.22.jar:5.3.22]
 at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.22.jar:5.3.22]
 at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.22.j

具体错误原因为:permit()只能在authorizeRequests中使用

请添加图片描述

🌟 二、错误修正

 @Override
    protected void configure(HttpSecurity http) throws Exception {
        http.authorizeHttpRequests()//错误error
                .anyRequest().authenticated()
                .and()
                .formLogin()
                .usernameParameter("username")
                .passwordParameter("password")
                .loginProcessingUrl("/doLogin")
                .loginPage("/login")
                ......

改为:

 @Override
    protected void configure(HttpSecurity http) throws Exception {
        http.authorizeRequests()//修正后
                .anyRequest().authenticated()
                .and()
                .formLogin()
                .usernameParameter("username")
                .passwordParameter("password")
                .loginProcessingUrl("/doLogin")
                .loginPage("/login")
                ......

到此这篇关于Spring Security中使用authorizeRequests遇到的问题小结的文章就介绍到这了,更多相关Spring Security使用authorizeRequests内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • SpringBoot启动时如何通过启动参数指定logback的位置

    SpringBoot启动时如何通过启动参数指定logback的位置

    这篇文章主要介绍了SpringBoot启动时如何通过启动参数指定logback的位置,在spring boot中,使用logback配置的方式常用的有两种,本文给大家介绍的非常详细,需要的朋友可以参考下
    2023-07-07
  • java判断http地址是否连通(示例代码)

    java判断http地址是否连通(示例代码)

    这篇文章通过实例代码给大家介绍了java判断http地址是否连通,文末给大家补充知识点url.openconnection() 设置超时时间的方法,感兴趣的朋友跟随小编一起看看吧
    2021-12-12
  • 聊聊Spring Boot 如何集成多个 Kafka

    聊聊Spring Boot 如何集成多个 Kafka

    这篇文章主要介绍了Spring Boot 集成多个 Kafka的相关资料,包括配置文件,生成者和消费者配置过程,本文通过实例代码给大家介绍的非常详细,需要的朋友参考下吧
    2023-10-10
  • 详解Java如何实现小顶堆和大顶堆

    详解Java如何实现小顶堆和大顶堆

    今天给大家带来的是关于Java的相关知识,文章围绕着Java如何实现小顶堆和大顶堆展开,文中有非常详细的解释及代码示例,需要的朋友可以参考下
    2021-06-06
  • Java JVM运行时数据区(Run-Time Data Areas)

    Java JVM运行时数据区(Run-Time Data Areas)

    运行时数据区,是java虚拟机定义的在程序执行期间使用的各种运行时的数据区,通过JVM运行时数据区图例给大家展示的很详细,对JVM 运行时数据区相关知识感兴趣的朋友跟随小编一起看看吧
    2021-06-06
  • SpringCache常用注解及key中参数值为null问题解析

    SpringCache常用注解及key中参数值为null问题解析

    这篇文章主要介绍了SpringCache常用注解及key中参数值为null的问题解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-09-09
  • java后端请求过滤options方式

    java后端请求过滤options方式

    Optional项是一个容器对象,它可以包含非空值,也可以不包含非空值,它用于表示没有值,而不是使用 null,引入Optional项是为了帮助开发人员编写更简洁、更具表现力的代码,并避免 NullPointerException
    2024-01-01
  • mybatis插件实现自定义改写表名实例代码

    mybatis插件实现自定义改写表名实例代码

    在数据库操作过程中,经常有修改表名的需求,下面这篇文章主要给大家介绍了关于mybatis插件实现自定义改写表名的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-04-04
  • HDFS中JAVA API的使用

    HDFS中JAVA API的使用

    HDFS是一个分布式文件系统,既然是文件系统,就可以对其文件进行操作,比如说新建文件、删除文件、读取文件内容等操作。下面记录一下使用JAVA API对HDFS中的文件进行操作的过程
    2017-07-07
  • Java求字符串中出现次数最多的字符串以及出现次数

    Java求字符串中出现次数最多的字符串以及出现次数

    这篇文章主要为大家详细介绍了Java统计字符串中出现次数最多的字符串以及出现次数,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-04-04

最新评论