【发布时间】:2021-01-15 17:04:14
【问题描述】:
是否有任何方法可以将 .NET core Razor Pages 应用程序配置为无需对根目录进行身份验证,对一个子目录进行基本 uid/密码身份验证,对不同的子目录进行 Azure B2C:
/
/basicauth
/aadb2c
我看到basic uid/password 的一个设置startup.cs 看起来像这样:
services.AddMvc().AddRazorPagesOptions(options => {
options.Conventions.AuthorizeFolder("/admin");
}).SetCompatibilityVersion(CompatibilityVersion.Version_2_2);
...在Azure b2c looks 中保护整个应用程序。从上面的服务配置来看,似乎只能使用一种类型的授权。对吗?
【问题讨论】:
-
我相信,身份验证是在根目录注入的,我认为那里只允许身份验证服务。希望您能从其他人那里得到更多的确认或矛盾。
-
对于一个在不同文件夹上使用不同身份验证的 asp.net 应用程序,未开箱即用。可以在整个应用程序上支持多个身份验证,然后根据角色或身份限制对资源/文件夹的访问
-
谢谢。如果您将此作为答案,我会检查它。
-
同意PranavSingh,您可以在一个应用程序中使用多个身份验证,尝试使用不同的身份验证方案,然后在页面中,使用授权属性并分配方案,参考:Multiple authentication methods in asp.Net core 2.2,@987654324 @ 和 Use multiple authentication schemes.
-
完成。你说服了我。如果您想将此放在答案中,我会将其标记为答案。