公司代理背后的Spring Security OAuth2认证服务器

时间:2017-01-09 20:40:44

标签: java authentication spring-security proxy spring-security-oauth2

我目前有一个身份验证方案,我在同一网络上有一个客户端和一个资源服务器,但是,身份验证服务器位于公共云提供商上。我目前由需要的代理(url,端口,用户名和密码)分隔。我不确定如何配置我的Spring Security Resource Server以通过代理调用Authentication服务器,而不设置会强制我的客户端需要通过代理的jvm级别代理。

这是我最简单的例子:

@SpringBootApplication
@EnableOAuth2Sso
@RestController
public class SocialApplication extends WebSecurityConfigurerAdapter {
   
   @RequestMapping("/user")
   public Principal user(Principal principal) {
      return principal;
   }

   @Override
   protected void configure(HttpSecurity http) throws Exception {
      http.antMatcher("/**").authorizeRequests().antMatchers("/", "/login**", "/webjars/**").permitAll().anyRequest()
            .authenticated();
   }

   public static void main(String[] args) {
      SpringApplication.run(SocialApplication.class, args);
   } 

配置

security:
  oauth2:
    client:
      clientId: myCoolClientId
      clientSecret: epicSecretKey
      accessTokenUri: https://github.com/login/oauth/access_token
      userAuthorizationUri: https://github.com/login/oauth/authorize
      clientAuthenticationScheme: form
    resource:
      userInfoUri: https://api.github.com/user

logging:
  level:
    org.springframework.security: DEBUG 

0 个答案:

没有答案