asp.net-core - AAD B2C 的客户凭证流
问题描述
我有一个带有 NetCore API 后端的 SPA React 应用程序。这个 api 也被另一个应用程序使用。
我想使用 AAD B2C 和第二个应用程序使用客户端凭据流对 SPA 用户进行身份验证和授权。我了解 B2C 不支持客户凭证流。我读到了这一点,以实现我需要在 Active Directory(非 B2C)以及客户端应用程序中再次注册 api 并使用普通 AD 进行配置。
这将使我在 B2C 中注册为应用程序的 SPA 和 API,在正常的非 B2C 中注册为 API 和客户端应用程序。
如果....一切都正确,我如何让 API 验证两种不同类型的客户端?通过针对 AD 非 B2C 的客户端凭据流从 B2C 和客户端应用程序授权用户
解决方案
要从 B2C 授权用户,您只需参考此文档:教程:使用 Azure Active Directory B2C 授予对 ASP.NET Web API 的访问权限。
您主要关心的是针对 AD 非 B2C 的客户端凭据流。
我有一个测试,步骤和普通AD一样:
我在 Azure AD B2C 中注册了一个 Web API 应用程序。在其manifest.xml
.
"appRoles": [
{
"allowedMemberTypes": [
"Application"
],
"description": "Writers Have the ability to create tasks.",
"displayName": "Writer",
"id": "d1c2ade8-98f8-45fd-aa4a-6d06b947c66f",
"isEnabled": true,
"lang": null,
"origin": "Application",
"value": "Writer"
}
]
然后我在普通 AD 中注册了一个 Web App 应用程序。为其添加 API 权限。
使用客户端凭据流获取访问令牌。
推荐阅读
- c++ - 缓存行为是否解释了减少 C++ 写入时间以释放存储?
- c++ - MsgWaitForMultipleObjects 异常将 Internet Explorer 浏览器帮助程序对象迁移到 Google Chrome
- php - SQL Server 2017 - VirtualBox 上的“用户登录失败”PHP
- gpflow - 使用 GPflow 进行多维高斯过程回归
- javascript - TypeError:render 不是函数 updateContextConsumer
- java - mvn 测试非常非常慢
- wordpress - WooCommerce 在管理员中将产品添加到订单时更改价格
- javascript - 将组件 css 添加到 React.js,'App' 已定义但从未使用 no-unused-vars
- linux - 在 LINUX shellscript 中访问作业 PID 的问题
- python - 如何并行处理两个递归 Try except 块(Python)