繁体   English   中英

Spring 使用令牌进行 OAuth2 身份验证

[英]Spring OAuth2 authentication with token

我有这个 SpringBoot 应用程序,它通过 Google 使用 OAuth2 登录。 它本身就可以正常工作。

但是,我正在尝试将它与我的 React 前端连接起来,因此:尝试开发代币交换。

安全配置

http.cors()
      .and()
      .authorizeRequests()
      .antMatchers(HttpMethod.GET, "/oauth/**")
      .authenticated()
      .anyRequest()
      .permitAll()
      .and()
      .oauth2Login();

现在,我以这种方式获取令牌:

OAuth2AuthorizedClient client = authorizedClientService.loadAuthorizedClient(authentication.getAuthorizedClientRegistrationId(), authentication.getName());
String token = client.getAccessToken().getTokenValue();

并将其发送给我的 React 客户端。

问题是:如何在 SpringBoot 应用中接收和解释授权令牌? 现在,只要我附上授权Authoriation ,它就会给我一个 CORS 问题...

您必须在 spring 启动应用程序中配置允许的 CORS 请求,或者从同一域为您的反应前端提供服务。

我个人总是选择第二个选项,使用 spring 引导应用程序为某些 url(例如 /static/js/)上的反应包提供服务。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM