怎么关掉springsecurity(spring security 关闭默认拦截)

技术如何解决SpringSecurity自定义AuthenticationProvider无法@Autowire的问题这篇文章主要介绍了如何解决SpringSecurity自定义AuthenticationProvide

这篇文章主要介绍了如何解决SpringSecurity自定义AuthenticationProvider无法@Autowire的问题,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

自定义AuthenticationProvider无法@Autowire的解决

在AuthenticationProvider中使用@自动连线注入时始终报空问题

找了半天发现应该在SecurityConfig配置类中

@EnableWebSecurity

公共类security config extendwebsecurity configurator {

在设置AuthenticationProvider时

应该使用@豆的方式设置

@豆

customauthenticationprovidercoutauthenticationprovider(){ 0

returnnew customauthenticationprovider();

}

@覆盖

受保护的void configure(authenticationmanagerbuildruth)throwsException {

auth。authenticationprovider(customAuthenticationProvider());

}

之前的错误的设置方式是

@覆盖

受保护的void configure(authenticationmanagerbuildruth)throwsException {

auth。authenticationprovider(new customauthenticationprovider());

}好了,这就可以实现AuthenticationProvider时自由的使用@自动连线了

自定义AuthenticationProvider的简单例子

xml 配置

认证管理器

身份验证-provider ref=' MyAuthenticationProvider '/

/身份验证-管理器

bean : bean id=' userdailsservice ' class=' net。螳螂。保安。auth。nmuserdailsservice “/

bean s : bean id=' MyAuthenticationProvider ' class=' net。螳螂。保安。auth。' MyAuthenticationProvider '

beans 3360属性名=' UserDetailservice '

beans:beanclass=' net。螳螂。保安。auth。nmuserdailsservice ' n

bsp;     
            </beans:bean>
        </beans:property>
  </beans:bean>

net.mantis.security.auth.MyAuthenticationProvider

public class MyAuthenticationProvider implements AuthenticationProvider {
 
    UserDetailsService userDetailsService;
    public Authentication authenticate(Authentication authentication)
            throws AuthenticationException {
         //username
        System.out.println("user name: "+authentication.getName());
        //password
        System.out.println("password: "+authentication.getCredentials());
        System.out.println("getPrincipal: "+authentication.getPrincipal());
        System.out.println("getAuthorities: "+authentication.getAuthorities());
        System.out.println("getDetails: "+authentication.getDetails());
        UserDetails userDetails = (UserDetails)this.userDetailsService.loadUserByUsername(authentication.getName());
      
        UsernamePasswordAuthenticationToken result = new UsernamePasswordAuthenticationToken(
                userDetails, authentication.getCredentials(),userDetails.getAuthorities());
        return result;
    }
    public boolean supports(Class authentication) {
         return true;
    }
    public void setUserDetailsService(UserDetailsService userDetailsService){
        this.userDetailsService = userDetailsService;
    }
}

net.mantis.security.auth.NMUserDetailsService

public class NMUserDetailsService implements UserDetailsService {
    @Override
    public UserDetails loadUserByUsername(String userName)
            throws UsernameNotFoundException {
        ArrayList list = new ArrayList();
        list.add(new SimpleGrantedAuthority("ROLE_SUPERVISOR"));
        User details = new User("rod", "koala", list);
        return details;
    }
}

感谢你能够认真阅读完这篇文章,希望小编分享的“如何解决SpringSecurity自定义AuthenticationProvider无法@Autowire的问题”这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/153409.html

(0)

相关推荐

  • 基于RTVC-7 Voice Cloning Model 的Tuned-GE2E-SayEN-EarSpeech 搭建怎样的

    技术基于RTVC-7 Voice Cloning Model 的Tuned-GE2E-SayEN-EarSpeech 搭建怎样的基于RTVC-7 Voice Cloning Model 的Tuned-GE2E-SayEN

    攻略 2021年12月10日
  • Hibernate如何实现批量处理

    技术Hibernate如何实现批量处理这篇文章给大家分享的是有关Hibernate如何实现批量处理的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Hibernate批量处理其实从性能上考虑,它是

    攻略 2021年12月8日
  • Hive数据如何导入导出mysql

    技术Hive数据如何导入导出mysql这篇文章给大家分享的是有关Hive数据如何导入导出mysql的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Hive定位:ETL(数据仓库)工具将数据从来源

    攻略 2021年12月10日
  • 利用PHP使用Redis常见的使用场景有哪些

    技术利用PHP使用Redis常见的使用场景有哪些这篇文章主要为大家展示了“利用PHP使用Redis常见的使用场景有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“利用PHP

    攻略 2021年11月25日
  • 电脑网卡坏了怎么修复,笔记本的无线网卡坏了,怎么办

    技术电脑网卡坏了怎么修复,笔记本的无线网卡坏了,怎么办如果笔记本的无线网络无法连题和硬件问题两种情况电脑网卡坏了怎么修复: 第一、系统问题 无线网络无法连接的原因有:
    1、网卡驱动不正常;
    2、不小心关闭了系统的无线

    生活 2021年10月30日
  • snow形容词,车上snow是什么意思

    技术snow形容词,车上snow是什么意思一,SNOW是雪地模式的意思。二,snow是雪地模式在仪表盘上的显示。1,snow,在变速器旁边一般会有个SNOW按键,按下SNOW按键后,汽车以雪地模式行驶,适合积雪或湿滑地面

    生活 2021年10月23日