我想从 Google 服务帐户凭据(不透明访问 token 或 ID JWT)开始,并以 Azure B2C 凭据结束。 Azure 可以实现类似的功能吗?我没有看到任何 API 来执行此操作:https://learn.microsoft.com/en-us/azure/active-directory-b2c/openid-connect
注意:这在概念上与我之前提出的另一个问题类似(但在目标身份方面有所不同): Impersonate Azure Service Principal from a Google Service Account
编辑:我们的用例是将代表不受信任的客户端(例如系统中的用户)的 Google 服务帐户凭据交换为 Azure B2C 中的用户 token 。不幸的是,这消除了 client credentials flow ,正如评论中提到的。
最佳答案
Azure AD B2C 仅支持与其他身份提供商的交互式联合流程。
Google 服务帐户是非交互式身份验证。 AAD B2C 将这些凭据传递给 Google 的唯一方法是通过其 REST API 接口(interface)。 https://learn.microsoft.com/en-us/azure/active-directory-b2c/restful-technical-profile
凭证需要硬编码到策略中或通过 AAD B2C“策略 key ”。 https://learn.microsoft.com/en-us/azure/active-directory-b2c/secure-rest-api?tabs=windows&pivots=b2c-custom-policy
据我所知,AAD B2C REST API 接口(interface)不支持 Google 所需的身份验证方法。所以我的结论是这是不可能的。
关于azure - 使用 Google 服务帐户登录 Azure B2C,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67610341/