c# - .NET Core API Azure B2C 身份验证配置
问题描述
在 microsoft 文档中,我们可以找到 b2c 身份验证配置的示例。
services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
.AddMicrosoftIdentityWebApi(options =>
{
Configuration.Bind("AzureAdB2C", options);
options.TokenValidationParameters.NameClaimType = "name";
},
options => { Configuration.Bind("AzureAdB2C", options); });
从中获取配置的 appsettings 如下所示:
"AzureAdB2C": {
"Instance": "https://fabrikamb2c.b2clogin.com",
"ClientId": "90c0fe63-bcf2-44d5-8fb7-b8bbc0b29dc6",
"Domain": "fabrikamb2c.onmicrosoft.com",
"SignedOutCallbackPath": "/signout/B2C_1_susi_reset_v2",
"SignUpSignInPolicyId": "B2C_1_susi_reset_v2"
//"CallbackPath": "/signin/B2C_1_sign_up_in" // defaults to /signin-oidc
},
为什么我们要先做Configuration.Bind("AzureAdB2C", options); 当此选项的 JwtBearerOptions 类型与我们在应用程序设置中的配置完全不匹配时?(Configuration.Bind("AzureAdB2C", options);的第二次出现更有意义,因为 options 具有 MicrosoftIdentityOptions 类型)
在这种身份验证中,我们应该在 API 中的哪里定义身份验证范围?
解决方案
不完全理解这个问题,但是:
Configuration.Bind("AzureAdB2C", options); });
是设置 B2C 身份验证(与 Azure AD 相对)。
有两个独立的项目。范围进入 ToDoList 项目而不是 WebApp 项目
“在 appsettings.json 文件中添加部分名称 TodoList 并添加键 TodoListScope、TodoListBaseAddress”。
推荐阅读
- c# - one2many 关系,得到父母和孩子
- arrays - 将递减变量传递给“sed”命令时出现错误替换错误
- c# - 下载大文件时 SendAsync 和 CopyToAsync 不起作用
- javascript - 如何完成递归函数内部的循环?
- javascript - 从谷歌电子表格中获取值
- html - 导航栏和标签
- .htaccess - 如何在 htaccess 中添加在单行中接受多个斜杠和非斜杠 url
- c++ - C++:使用类搜索向量中的特定元素时,我得到了错误的结果
- visual-studio - 安装后是否可以移动/分发 cuda 编译器(nvcc)?
- node.js - AWS S3 不工作,但之前没有更改代码就可以工作