程序问答   发布时间:2022-06-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了如何使用来自 gapi (google-api-javascript-client) 库的客户端通过 Google Cloud IAP 进行身份验证?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决如何使用来自 gapi (google-api-javascript-client) 库的客户端通过 Google Cloud IAP 进行身份验证??

开发过程中遇到如何使用来自 gapi (google-api-javascript-client) 库的客户端通过 Google Cloud IAP 进行身份验证?的问题如何解决?下面主要结合日常开发的经验,给出你关于如何使用来自 gapi (google-api-javascript-client) 库的客户端通过 Google Cloud IAP 进行身份验证?的解决方法建议,希望对你解决如何使用来自 gapi (google-api-javascript-client) 库的客户端通过 Google Cloud IAP 进行身份验证?有所启发或帮助;

给定一个客户端应用程序(用 Angular 编写,但不是很重要),我使用 google-api-javascript-client 库对用户进行身份验证。以此处描述的方式 - https://developers.google.com/sheets/api/quickstart/js:

@H_489_5@      gAPI.load('clIEnt:auth2',() => {
        gAPI.clIEnt.init({
          clIEntID: CLIENT_ID,scope: ScopES,discoveryDocs: disCOVERY_DOCS
        }).then(() => {
          gAPI.auth2.getAuthInstance().isSignedIn.Listen(this.onSigninStatusChanged.bind(this));
          const isSignedIn = gAPI.auth2.getAuthInstance().isSignedIn.get();
          if (!isSignedIn) {
            gAPI.auth2.getAuthInstance().signIn({prompt: 'SELEct_account'});
          }
        });
      });

现在我想访问 Identity-Aware Proxy (IAp) 后面的 AppENGIne 后端。

我天真地尝试通过 http 请求的授权标头从 GoogleUser 传递令牌,但它似乎不起作用(获得 401):

@H_489_5@    let token = gAPI.auth2.getAuthInstance().currentUser.get().getAuthResponse().ID_token;
    this.http.get<Config>('https://myservice-dot-myproject.ew.r.appspot.com/API/get',{
        headers: { 'Authorization': 'Bearer ' + token}
      });

我想我需要以某种方式使用来自 IAP 的 OAuth 客户端 ID。 我找到了关于如何使用 nodeJs 身份验证客户端执行此操作的 sample。 但是找不到使用客户端 @H_489_5@Google-API-JavaScript-clIEnt 库的方法。

更新我找到了一个很好的在线资源来验证我从 @H_489_5@GoogleUser.getAuthResponse().ID_token - https://oauth2.googleapis.com/tokeninfo?id_token=token (sourcE) 获得的令牌,它显示以下内容:

@H_489_5@{
  "iss": "accounts.Google.com","azp": "my OAuth ClIEnt ID that I used in gAPI (CLIENT_ID)","aud": "OAuth ClIEnt ID that I used in gAPI (CLIENT_ID)","sub": "user ID (@R_772_10793@er)","hd": "Google user GSuite domain","email": "Google user email","email_verifIEd": "true","at_hash": "some hash","name": "Google user name","picture": "an url","given_name": "Google user firstname","family_name": "Google user lastname
  "locale": "en","iat": "1615972232","exp": "1615975832","jti": "87129b6c0f684b0bc7beac9df5e522e6272c13f1","alg": "RS256","kID": "6a8ba5652a7044121d4fedac8f14d14c54e4895b","typ": "JWT"
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

大佬总结

以上是大佬教程为你收集整理的如何使用来自 gapi (google-api-javascript-client) 库的客户端通过 Google Cloud IAP 进行身份验证?全部内容,希望文章能够帮你解决如何使用来自 gapi (google-api-javascript-client) 库的客户端通过 Google Cloud IAP 进行身份验证?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:gapiGoogle