SpringBoot + SpringSecurity5 + vue 前后端分离认证授权

本文介绍了在新项目中引入Spring Security进行安全控制的经验,包括解决MariaDb登录配置加密策略的问题和处理跨域的方案。在Spring Security5中配置登录认证遇到的挑战,如加密策略和UserDetailsService注入问题。文章提供了部分关键代码示例。
摘要由CSDN通过智能技术生成

新项目引入安全控制

  项目中新近添加了Spring Security安全组件,前期没怎么用过,加之新版本少有参考,踩坑四天,终完成初步解决方案.其实很简单,Spring Security5相比之前版本少了许多配置,操作起来更轻量

  MariaDb登录配置加密策略

  SpringSecurity5在执行登录认证时,需预设加密策略.

  坑一:加密策略配置,验密始终不通过,报错401

  坑二:本地重写的UserDetailsService实现类在注入的时候找不到,目前图省事直接用了 @Qualifier制定

  其它,实体类user实现UserDetails,role实现GrantedAuthority与之前版本并有太大变动,可参考很多,不做赘述

  代码如下:  

/**
     * 项目中重写的 UserDetailsService接口的实现类,需指定
     */
    @Qualifier("userService")
    @Autowired
    private UserDetailsService userDetailsService;
    /**
     * 初始验证登录  从内存中取密码
     * @param auth
     * @throws Exception
     */
    @Autowired
    public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {

        auth.userDetailsService(userDetailsService).passwordEncoder(new BCryptPasswordEncoder());

    }

跨域的问题

  Springboot2.0.3处理跨域的时候特别简单,只需要在

  @EnableWebSec
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值