如何在springjava后端服务中使用googleweboauth2

ijxebb2r  于 2021-07-16  发布在  Java
关注(0)|答案(0)|浏览(194)

我有一个登录页面,允许使用google帐户登录spring应用程序。这是所有用户需要做的。剩下的是应用程序内部的一些计算,结果应该放在google表单上。
登录部分:

@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {

    @Override
    public void configure(HttpSecurity httpSecurity) throws Exception {
        httpSecurity.csrf().disable().antMatcher("/**").authorizeRequests()
                .antMatchers("/", "/login.html").authenticated()
                .anyRequest().authenticated()
                .and()
                .oauth2Login().permitAll()
                .and().
                logout().logoutSuccessUrl("/");

    }
}

现在我需要使用googleapi来访问用户googlesheets,但是作为后端。ui(web)中没有更多交互。
在服务中,我可以访问oauth2身份验证,如下所示:

SecurityContext securityContext = SecurityContextHolder.getContext();
            Authentication authentication = securityContext.getAuthentication();

但我不知道如何在googleapi中使用这个令牌,就像在与googlesheets通信一样。可能我需要特殊的getcredentials(http\u传输)函数。

Sheets service = new Sheets.Builder(HTTP_TRANSPORT, JSON_FACTORY, getCredentials(HTTP_TRANSPORT))
                .setApplicationName(APPLICATION_NAME)
                .build();

举个小例子就好了。我在疯狂地挖掘互联网,却找不到办法。我想这会很容易的。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题