Java Spring安全-身份验证过滤器

Java Spring安全-身份验证过滤器,java,spring,authentication,spring-security,Java,Spring,Authentication,Spring Security,我想知道如何在SSO期间获得spring身份验证 问题简介: 用户登录到我的应用->Spring自定义过滤器(使用SSO登录的自定义身份验证提供程序)启动 现在我们有了一个经过身份验证的用户(例如bob/bob),我们正试图将请求转发给具有自己的SSO的第三方应用程序—这里的问题是它具有自己的内存中身份验证(例如admin/admin) 现在,第三方应用程序提示输入auth(admin/admin),用户bob/bob现在丢失。现在,当bob尝试登录我的应用程序时,他没有被识别为会话现在有adm

我想知道如何在SSO期间获得spring身份验证

问题简介:

用户登录到我的应用->Spring自定义过滤器(使用SSO登录的自定义身份验证提供程序)启动

现在我们有了一个经过身份验证的用户(例如bob/bob),我们正试图将请求转发给具有自己的SSO的第三方应用程序—这里的问题是它具有自己的内存中身份验证(例如admin/admin)

现在,第三方应用程序提示输入auth(admin/admin),用户bob/bob现在丢失。现在,当bob尝试登录我的应用程序时,他没有被识别为会话现在有admin/admin

当会话信息被第三方应用程序覆盖时,如何解决此问题

SecurityConfig.class

这将是第三方应用程序的安全配置,它是在创建spring上下文时创建的

MyCustomConfig.class

这将是我的自定义安全配置(SSO),也是在spring上下文中创建的

SSO不起作用,因为我的自定义配置与第三方应用具有不同的权限(用户/角色)


非常感谢您的帮助……

如果要在此处获得任何有意义的帮助,您需要提供更多关于第三方应用程序以及如何与之交互的详细信息。好的,添加了一些有意义的完整代码片段-谢谢,如果我理解正确,第三方应用程序与您的应用程序在相同的Spring上下文中运行?这是正确@Raniz
 @Configuration
 @Bean
    public UserDetailsService userDetailsService() {
        InMemoryUserDetailsManagerBuilder b = new InMemoryUserDetailsManagerBuilder()
                .withUser("admin").password("admin").authorities(new String[]{"ROLE_ADMIN"});
        return new CompositeUserDetailsService(Arrays.asList(new UserDetailsManager[]{b.build(), this.technicalUserDetailsService()}));
    }
@configuration
    @Bean
    public UserDetailsService userDetailService() {
        return new customUserDetailsService(); // Custom SSO
    }