首页 > 解决方案 > 如何将我的 webapp 与 Azure AD B2C 连接

问题描述

我正在尝试使用 Web 应用程序设置我的 asp.net 核心。但我遇到了错误。我做了一些谷歌搜索并找到了可能的解决方案,例如

[关于使用 Azure AD B2C 制作 ASP.NET Core Web 应用程序的文档] ( https://azure.microsoft.com/de-de/resources/samples/active-directory-b2c-dotnetcore-webapp/ ) 和这个.NETCore B2C 样本

在示例的解决方案中,该appsettings.json文件还具有 Api。

"AzureAdB2C": {
"ClientId": "90c0fe63-bcf2-44d5-8fb7-b8bbc0b29dc6",
"Tenant": "fabrikamb2c.onmicrosoft.com",
"SignUpSignInPolicyId": "b2c_1_susi",
"ResetPasswordPolicyId": "b2c_1_reset",
"EditProfilePolicyId": "b2c_1_edit_profile",
"RedirectUri": "http://localhost:5000/signin-oidc",
"ClientSecret" : "v0WzLXB(uITV5*Aq",
"ApiUrl": "https://fabrikamb2chello.azurewebsites.net/hello",
"ApiScopes": "https://fabrikamb2c.onmicrosoft.com/helloapi/demo.read"
}

但我不明白为什么我需要 Api。我是否需要在 Azure AD B2C Tennant 中设置 API?还是我需要的 Api 中也必须有一些代码?

有没有一个很好的例子可以用来帮助理解这个话题?

问候斯特凡

标签: c#asp.net-coreazure-ad-b2c

解决方案


我建议通读.NetCore webapp 示例上的自述文件,并首先按原样运行示例。

然后,按照[OPTIONAL]说明示例的工作原理以及如何使用您自己的 B2C 租户和策略进​​行设置的步骤进行操作。该示例调用一个 API "https://fabrikamb2chello.azurewebsites.net/hello",因此您需要在B2C 中注册您自己的 Web API,以便您可以定义您将为其请求访问令牌的范围。

然后,您将使用示例中的坐标替换您的应用坐标(例如租户、ClientId、Policies、ClientSecret、ApiUrl 和 ApiScopes)。最后,您应该能够重建并运行解决方案。


推荐阅读