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

Auth0.js: Is there a way to silently replace a google access_token into an auth0 access_token?

auth0 版本:9.3.3

我正在开发一个使用 Google 身份 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?

找到解决方案: https://auth0.com/docs/connections/calling-an-external-idp-api
原来googleaccess_token可以通过Auth0管理API.

要遵循的步骤是:

  1. 获取允许您调用 Auth0 管理的访问令牌API。
  2. 调用 Auth0 管理 API 的 Get Users by ID 端点,使用在第一步中获得的访问令牌。此端点 returns 完整的用户配置文件,其中包含 IdP 访问令牌。
  3. 从响应中提取 IdP 访问令牌并使用它调用 IdP 的 API。