如何将 Azure AD Blazor 服务器应用程序的一部分设置为 public 打开
Howto set part of Azure AD Blazor Server App open for public
我的目标
我构建了一个 Blazor Server Web 应用程序。
此应用程序的 部分 需要身份验证(仅限于我们组织中的用户)。另一部分应该完全对互联网上的所有人开放。
我做了什么
我已经设置并配置了 'Microsoft identity platform',因此该应用已在 'app-registrations' 和 'enterprise applications' 下注册到 Azure AD。
所有 Azure 设置现在似乎都可以使用,例如,如果我更改 'Assignment required?' 等设置,我会看到行为上的差异。
我的问题
整个应用程序现在需要身份验证,而我需要部分身份验证 public。将 [AllowAnonymous]
添加到我的一些 Razor 组件似乎被忽略了。是否可以向 public 开放此应用程序的部分内容?
更新
出于测试目的,我在 Program.cs 中添加了两个路由处理程序,如下所示:
app.MapControllers();
app.MapGet("/", () =>
{
}).AllowAnonymous();
app.MapGet("/admin", () =>
{
}).RequireAuthorization();
app.Run();
现在,当我导航到我的应用程序 url 时,它不会将我引导至 Microsoft 登录页面。当我将 /admin 添加到 url 时。所以我想我必须将路由更改为 'open up' 应用程序的一部分?
我决定将我的应用程序分成两个单独的项目。一份用于 public 部分,一份用于管理员登录。
我的目标
我构建了一个 Blazor Server Web 应用程序。 此应用程序的 部分 需要身份验证(仅限于我们组织中的用户)。另一部分应该完全对互联网上的所有人开放。
我做了什么
我已经设置并配置了 'Microsoft identity platform',因此该应用已在 'app-registrations' 和 'enterprise applications' 下注册到 Azure AD。
所有 Azure 设置现在似乎都可以使用,例如,如果我更改 'Assignment required?' 等设置,我会看到行为上的差异。
我的问题
整个应用程序现在需要身份验证,而我需要部分身份验证 public。将 [AllowAnonymous]
添加到我的一些 Razor 组件似乎被忽略了。是否可以向 public 开放此应用程序的部分内容?
更新
出于测试目的,我在 Program.cs 中添加了两个路由处理程序,如下所示:
app.MapControllers();
app.MapGet("/", () =>
{
}).AllowAnonymous();
app.MapGet("/admin", () =>
{
}).RequireAuthorization();
app.Run();
现在,当我导航到我的应用程序 url 时,它不会将我引导至 Microsoft 登录页面。当我将 /admin 添加到 url 时。所以我想我必须将路由更改为 'open up' 应用程序的一部分?
我决定将我的应用程序分成两个单独的项目。一份用于 public 部分,一份用于管理员登录。