Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/312.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将Spring引导风格的安全性添加到非引导Spring应用程序_Java_Spring_Spring Boot_Spring Security - Fatal编程技术网

Java 将Spring引导风格的安全性添加到非引导Spring应用程序

Java 将Spring引导风格的安全性添加到非引导Spring应用程序,java,spring,spring-boot,spring-security,Java,Spring,Spring Boot,Spring Security,我的目标是向非引导Spring应用程序添加基于OpenID连接的身份验证层(使用Azure AD)。所需的配置作为Spring Boot应用程序的Java代码提供 //要添加到现有项目的配置 @启用Web安全性 @EnableGlobalMethodSecurity(Prespenabled=true) 公共类AADOAuth2LoginSecurityConfig扩展了WebSecurity配置适配器{ @自动连线 专用OAuth2UserService oidcUserService; @凌

我的目标是向非引导Spring应用程序添加基于OpenID连接的身份验证层(使用Azure AD)。所需的配置作为Spring Boot应用程序的Java代码提供

//要添加到现有项目的配置
@启用Web安全性
@EnableGlobalMethodSecurity(Prespenabled=true)
公共类AADOAuth2LoginSecurityConfig扩展了WebSecurity配置适配器{
@自动连线
专用OAuth2UserService oidcUserService;
@凌驾
受保护的无效配置(HttpSecurity http)引发异常{
http
.授权请求()
.anyRequest().authenticated()
.及()
.oauth2Login()
.userInfoEndpoint()
.oidcUserService(OIDCUSERVICE);
}
}
但是,要使用此功能扩展的应用程序是

  • 不是Spring启动应用程序

    不过,该应用程序是基于Spring框架的,使用的是
    /src/main/webapp/WEB-INF/applicationContext.XML
    XML配置文件中定义的Spring安全性

  • 不可修改

    可以添加新类或配置,但不能更改核心(第三方/供应商)

我试图通过定义


在SpringXML配置中,当我看到组件被初始化时,
configure(..)
-成员从未被调用,并且身份验证也没有添加到应用程序中


是否可以使用基于Spring引导的配置扩展此(遗留)应用程序?添加此类功能的推荐方法是什么?

您发布的代码都不是Spring boot独有的,它只是Spring安全配置API,没有Spring boot也可以正常工作。但是,如果您已经有了一个Spring Security XML配置,那么它们很可能是冲突的,而且XML中定义的配置可能具有优先权。您发布的代码都不是Spring boot独有的,它只是Spring Security configuration API,在没有Spring boot的情况下可以正常工作。但是,如果您已经有了SpringSecurityXML配置,那么它们很可能相互冲突,而且XML中定义的配置可能具有优先权。