Auth0.js:有没有办法将google access_token静默替换为auth0 access_token?

时间:2018-03-22 16:45:13

标签: javascript google-chrome auth0 google-identity

auth0版本:9.3.3

我正在开发使用Google Identity API的Chrome扩展程序。当用户已经获得Google授权后加载我的扩展程序时,它会像开销一样通过以下方式再次显示身份验证弹出窗口:

Auth0Js.authorize({connection:'google-auth2'})

我已经拥有google access_token:

chrome.identity.getAuthToken({}, function (access_token) {...})

看起来像:

ya29.GmCGBfZPOwM725oSok08AdMLQGHYNr50Ax9TAQVoHGjEkAS1gdv-R_1H_LBd6Fe9YgEjWm8eejTYk5IyCWGrdDn6P1R8ahRQW768_SDf7nD8Yq0kj2VXoBZVNYyiIDWtFP0

但我还需要auth0令牌。有没有办法静静地将google access_token交换为auth0 access_token?

1 个答案:

答案 0 :(得分:1)

找到解决方案: https://auth0.com/docs/connections/calling-an-external-idp-api
原始的google access_token可以通过Auth0 Management API获得。

要遵循的步骤是:

  1. 获取允许您调用Auth0 Management API的访问令牌。
  2. 使用步骤1中获取的访问令牌,通过ID端点调用Auth0 Management API的Get Users。此端点返回完整用户的配置文件,其中包含IdP访问令牌。
  3. 从响应中提取IdP访问令牌,并使用它来调用IdP的API。