【问题标题】:How to access Azure B2C openId protected API by multiple client Application如何通过多个客户端应用程序访问 Azure B2C openId 保护的 API
【发布时间】:2018-10-17 22:54:45
【问题描述】:

我使用 Azure B2C 保护我的 nodeJs API。我有两个访问我的 API 的 Web 应用程序。

这两个 Web 应用程序在 Azure B2C 中有自己的应用程序 Id。此外,那些可以通过 B2C 生成 access_token。

但是当我在我的 API 中验证这些 access_token 时,我必须将 web 应用程序的应用程序 ID 放入生成 access_token 作为观众。

但是观众不支持数组。我只能放一个应用程序ID。

我该如何解决这个问题?

如果我使用 B2C 保护 API,我只能从一个 Web 应用程序发出请求?

【问题讨论】:

  • 根据 Chris 的回答,您确定要获得访问令牌吗?也许你正在收到 id_token 的?

标签: node.js azure oauth-2.0 openid azure-ad-b2c


【解决方案1】:

访问令牌的受众 (aud) 声明标识了访问令牌的预期接收者(即 API 应用程序)。

在高层次上,您必须:

  1. Register the API application 以便任何客户端应用程序获取访问令牌以用于 API 应用程序。

  2. Grant access 由一个或多个客户端应用程序发送到 API 应用程序。

  3. 将 API 应用程序的应用程序标识符配置为 API 中间件的预期受众。

Azure AD B2C: Requesting access tokens 文章描述了客户端应用程序如何获取访问令牌以用于 API 应用程序。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-08-26
    • 2023-03-10
    • 2021-03-16
    • 2020-03-25
    • 2021-10-28
    • 2017-06-30
    • 2019-12-19
    • 1970-01-01
    相关资源
    最近更新 更多