springsecurity--Config层代码常用代码指令

news2025/1/13 15:29:52

 前提搭建

使我们的类继承于WebSecurityConfigurerAdapter这个类

同时调用service还有新建一个bean方法

@Bean
public PasswordEncoder getPassword() {
    return new BCryptPasswordEncoder();
}

这个代码是可以自定义账户和密码 

自定义登录账户和密码写在service类中

下方的红框中是表名要给授权的"角色或者身份" 

同时config这边重写方法 

重写类中的方法

 这行代码意思是获取登录时的账号和密码 

auth.userDetailsService(secourityService).passwordEncoder(getPassword());

接下来在重写方法

之后在方法里面写入需求指令

代码指令 

http.cors();//允许跨域访问
http.formLogin()//告诉security 使用自定义登录页面
        .loginPage("/login.html")//告诉security,页面在哪里
        .loginProcessingUrl("/dologin")//告诉表单要提交的地址
        //注册登录处理类
        .successHandler(new LoginSuccessHandler())//登录成功
        .failureHandler(new LoginFildHandler())//登录失败
        .permitAll();//不管登入,不登入 都能访问

/**
 * 未登录,就像访问系统资源
 */
http.exceptionHandling()
        .authenticationEntryPoint(new MyAuthenticationEntryPoint())//未登录,访问被拦截
        .accessDeniedHandler(new MyAccessDeniedHandler());//登录上了,但是没有对应的操作权限

/**
 * 退出系统
 */
http.logout().logoutSuccessHandler(new MyLogoutSuccessHandler());//退出系统

http.authorizeRequests()//配置请求权限的
.anyRequest().authenticated();//所有请求都拦截

http.csrf().disable(); //关闭跨站脚本攻击

 @Override
    protected void configure(HttpSecurity http) throws Exception {
        http.cors();//允许跨域访问
        http.formLogin()//告诉security 使用自定义登录页面
                .loginPage("/login.html")//告诉security,页面在哪里
                .loginProcessingUrl("/dologin")//告诉表单要提交的地址
                //注册登录处理类
                .successHandler(new LoginSuccessHandler())//登录成功
                .failureHandler(new LoginFildHandler())//登录失败
                .permitAll();//不管登入,不登入 都能访问
        /**
         * 未登录,就像访问系统资源
         */
        http.exceptionHandling()
                .authenticationEntryPoint(new MyAuthenticationEntryPoint())//未登录,访问被拦截
                .accessDeniedHandler(new MyAccessDeniedHandler());//登录上了,但是没有对应的操作权限
        /**
         * 退出系统
         */
        http.logout().logoutSuccessHandler(new MyLogoutSuccessHandler());//退出系统
        http.authorizeRequests() //配置请求权限的
                .anyRequest().authenticated();//所有请求都拦截


        http.csrf().disable(); //关闭跨站脚本攻击
    }

 一般常用登录的我们都只有这五个指令,其他的可自行拓展学习

补充

permitAll()

Spring Security中permitAll()和anonymous()的区别_magic_818的博客-CSDN博客

bean

Spring中Bean注解含义_magic_818的博客-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/74703.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SSM框架-SSM整合

目录 1 ContextLoaderListener 2 准备工作 3 配置web.xml 4 配置springmvc.xml 5 配置spring.xml 6 Spring整合MyBatis 7 配置log4j.xml 8 配置事务 9 测试功能 9.1 创建pojo类 9.2 员工列表功能 9.3 分页数据 9.4 分页相关超链接 1 ContextLoaderListener Spring提…

安卓玩机搞机技巧综合资源-----卸载内置软件 获取root权限 刷写第三方ROM【六】

接上篇 安卓玩机搞机技巧综合资源------如何提取手机分区 小米机型代码分享等等 【一】 安卓玩机搞机技巧综合资源------开机英文提示解决dm-verity corruption your device is corrupt. 设备内部报错 AB分区等等【二】 安卓玩机搞机技巧综合资源------EROFS分区格式 小米红…

985、211毕业一年,面试八家大厂,四面拿美团offer(Java后端)

自我介绍 本人三年开发,985硕士,211本科,专业都是软件工程,一直投的是Java后台开发,只投过一次网易的测试,技术不是太牛,但是比较努力。实验室没有项目,so项目经验是0,在…

openssl自动批量生成证书

使用bash批处理程序自动生成证书信息。 1、在linux系统创建一个文件夹 $ mkdir my_cert 2、创建CA证书以及私钥 $ cd my_cert $ openssl genrsa -out CA_Private.key 2048 $ openssl req -x509 -new -nodes -key CA_Private.key -sha256 -days 365 -out CA_Certificate.p…

Node.js 动画:事件循环

我们都听说过 JavaScript 和 Node.js 是单线程的,但实际上这意味着什么? 这意味着 JavaScript 一次只能做一件事。例如,我们不能同时对数字进行乘法和求和。我们通常按顺序进行操作。我们先加然后乘,反之亦然。现代计算机速度很快…

常见的卷积神经网络模型,卷积神经网络数学建模

1、卷积神经网络cnn究竟是怎样一步一步工作的 用一个卷积核滑动图片来提取某种特征(比如某个方向的边),然后激活函数用ReLU来压制梯度弥散。对得到的结果用另一个卷积核继续提取reLU,然后池化(保留区域最大或者用区域…

【linux】centos7 普通用户授予 root 权限

目录前言sudo介绍sudo的使用前提 --- 配置文件/etc/sudoers结语前言 最近通知 linux 期末考试啦!要上机实操并且要求不能使用 root 用户,因此有些操作需要涉及到权限问题,我们都知道在命令前加sudo就行了,但sudo的使用也是有前提…

Spring 创建和使用 · 存储 bean 对象 · 获取并使用 bean 对象 · 关于配置文件 id 的注意事项 · getBean 方法的更多用法

Spring 是一个包含了众多工具方法的 IoC 容器。 容器的最基本的功能:把对象存储到容器(Spring)中;从容器中将对象取出来。 在 Java 中对象也叫做 Bean,以后我们遇到对象就以 Bean 著称。 一、创建 Spring 项目1.1 创建…

吹爆,阿里专家手码“数据库优化速成小册”Github现已疯传

现在在很多设计、开发、测试人员的眼中会认为SQL优化只是DBA 的事情。他们不需要去关心。反映到具体工作中,他们缺乏相应的优化意识,只注重功能的实现而忽略了相应的执行成本。最终的结果往往就是代码质量不高,软件上线后问题多。 LZ当初就是…

现货黄金K线图的“温柔一刀”

学习现货黄金交易K线图如何看、如何分析的方法非常多,但是小编交易,徐学一到两种即可,学会小而精的分析方法,才是我们赚钱的秘诀。俗话说得好,一招鲜吃遍天,就是这个道理。如果技术太多,最后没办…

IOT云平台 simple(5)springboot netty实现modbus TCP Master

本系列教程包括: IOT云平台 simple(0)IOT云平台简介 IOT云平台 simple(1)netty入门 IOT云平台 simple(2)springboot入门 IOT云平台 simple(3)springboot netty实现TCP Se…

IFR202型红外雨量传感器数据说明

信号输出 寄存器 OUT_CFG 默认参数时,当降雨量达到预设的分辨率时,传感器从脉冲线输出脉冲信号、从数字 接口 RS232 或者 RS485 输出总降雨量、LED 指示灯闪烁一次。 数字接口 RS232 或者 RS485 输出数据帧说明如下:(16 进制数…

VUE3 数据的侦听

侦听数据变化也是组件里的一项重要工作,比如侦听路由变化、侦听参数变化等等。 Vue 3 在保留原来的 watch 功能之外,还新增了一个 watchEffect 帮助更简单的进行侦听。 watch 在 Vue 3 ,新版的 watch 和 Vue 2 的旧版写法对比,在…

Spring Security基础使用

Spring Security基础使用 定义 官方文档:https://docs.spring.io/spring-security/reference/index.html security结合servelt:https://docs.spring.io/spring-security/reference/5.6/servlet/getting-started.html Security 官方示例项目:https://…

深度对比 Footprint 和 Dune 数据模型

在产品建设方面,数据所有权转移已迅速成为需要解决的关键问题之一。社交媒体平台滥用数据的现象频发,我们亟需建立方案来解决这一问题。鉴于此,区块链提供了一种功能,可以永恒地存储、转移数据,并创建市场,…

ChatGPT帮你写代码?人工智能ChatGPT之于Web3的几点思考

人工智能AI有人热情膜拜,有人畏惧如虎,AI的发展已经进入高层面的快车道,技术更新迭代日新夜异,技术无罪也无善恶,曾经科幻未来的人机交流,共生共存如今在我们的脑海中已经有了轮廓的意识感想,科…

Spring底层事务原理

Spring事务底层原理一、EnableTransactionManagement工作原理二、Spring事务基本执行原理三、Spring事务的过程四、Spring事务传播机制五、Spring事务传播机制分类(1)案例分析、情况1(2)案例分析、情况2(3)…

SEVNLDAEFR, 186142-28-9

This peptide substrate corresponds to the Swedish Lys-Met/Asn-Leu (K670N/M671L) mutation of the amyloid precursor protein (APP) β-secretase cleavage site. It has been used for assaying β-secretase activity.该肽底物对应于淀粉样前体蛋白(APP) β-分泌酶切割位…

政企办公「分水岭」以至,融云百幄数智化破局

中国政企数智办公平台行业研究报告 246 年前,亚当斯密便在《国富论》中提出,劳动分工是提高社会生产效率的主要原因。从工厂定岗,到国际分工,分工的价值已经深入社会生活和工作的方方面面。关注【融云RongCloud】,了解…

六、使用注解开发

文章目录一、CRUD 注解(舍弃 mapper.xml): Select、 Insert、 Update、 Delete、 Param1、Select2、Insert3、Delete4、Update5、Param二、Lombok 插件,减少重复代码1、Data一、CRUD 注解(舍弃 mapper.xml): Select、 Insert、 Update、 Delete、 Param 通过注解去处…