Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.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
Single sign on Spring OAUTH2在oauth客户端上获取用户详细信息_Single Sign On_Spring Security Oauth2 - Fatal编程技术网

Single sign on Spring OAUTH2在oauth客户端上获取用户详细信息

Single sign on Spring OAUTH2在oauth客户端上获取用户详细信息,single-sign-on,spring-security-oauth2,Single Sign On,Spring Security Oauth2,我对SpringOAuth2还相当陌生。我想知道是否可以在oauth客户端附加自定义userdetails 像这样的 @EnableOAuth2Sso @Configuration public class SecurityConfig extends WebSecurityConfigurerAdapter { @Autowired @Qualifier("customUserDetailsService") priva

我对SpringOAuth2还相当陌生。我想知道是否可以在oauth客户端附加自定义userdetails

像这样的

    @EnableOAuth2Sso
    @Configuration
    public class SecurityConfig extends WebSecurityConfigurerAdapter {

        @Autowired
        @Qualifier("customUserDetailsService")
        private UserDetailsService userDetailsService;



        @Override
        public void configure(HttpSecurity http) throws Exception {

            http
                .antMatcher("/**")
                .authorizeRequests()
                .antMatchers("/", "/login**")
                .permitAll()
                .anyRequest()
                .authenticated();
        }

        @Override
        protected void configure(AuthenticationManagerBuilder auth) throws Exception {
            auth.userDetailsService(userDetailsService);
        }

    }
这不起作用,因为配置被忽略了


此客户端已在spring oauth2身份验证服务器中成功进行身份验证,但我希望在获得授权后加载其他用户详细信息。

自定义实现的
userdetails服务
用于在身份验证期间按用户名加载用户,该服务位于
AuthorizationServerConfigurerAdapter
下。我们重写它的configure(..)方法,该方法将
authorizationServerEndpointsConfiger
作为参数,并将其设置在那里

类似地,我们可以编写
ClientDetailsService
的自定义实现。在身份验证期间,这用于按客户端id加载客户端。此自定义实现的注册方式也与
UserDetailsService
相同

@Override
public void configure(final AuthorizationServerEndpointsConfigurer endpoints) throws Exception {
    endpoints.authenticationManager(authenticationManager);
    endpoints.userDetailsService(userDetailsService);
    endpoints.tokenStore(tokenStore);
    endpoints.setClientDetailsService(clientDetailsService);
    endpoints.accessTokenConverter(accessTokenConverter);
}