首页 > 解决方案 > 从 ASP.NET Core 中的 azure B2C 应用程序请求 JWT

问题描述

我有两个 API。

  1. 管理 API (.NET Core API)
  2. 医疗保健 API(Azure 函数 API)

我需要在 Healthcare API 中调用一个端点,它应该从管理 API 中调用。我知道最好的方法是使用 gRPC,但现在没有时间。

医疗保健 API 已通过 azure b2c 应用程序进行授权。并且管理员 API 已通过另一个 azure b2c 应用程序进行授权。因此,由于此授权,我无法从 Admin API 调用 Healthcare API。(不能使用允许匿名,因为它是一个 azure 函数 API)

我想到的一种解决方案是从用于授权医疗保健 API 的 b2c 应用程序中获取 Admin API 中的 jwt 令牌。但是关于如何做到这一点的想法。

上面的解决方法好吗?并且可行吗?有没有办法在不进入 gRPC 的情况下做到这一点?

提前致谢。

标签: azureasp.net-corejwtazure-ad-b2c

解决方案


如果这 2 个 B2C 应用属于同一个 B2C 租户,而您只想让管理 API 来调用医疗 API,也许您可​​以只使用 OAuth 2.0 客户端凭据授予流程。

尽管 Azure AD B2C 身份验证服务当前不直接支持 OAuth 2.0 客户端凭据授予流,但可以使用 Azure AD 和 Microsoft 标识平台/令牌端点为 Azure AD B2C 租户中的应用程序设置客户端凭据流。Azure AD B2C 租户与 Azure AD 企业租户共享一些功能。

如下: 在此处输入图像描述


推荐阅读