如何将现有 ASP CBAC 授权和身份验证添加到 Blazor WebApp 但不使用 Entity Framework 进行存储

How to add existing ASP CBAC authorization and authentication to a Blazor WebApp but not to use Entity Framework for storage

我需要将 MS ASP 授权和身份验证添加到我的 Blazor Web 应用程序。

现有的 MS 实施假定您使用 Entity Framework 来存储用户和声明数据。

在我的例子中,我需要保留现有的 CBAC MS ASP 授权和身份验证功能(包括使用 Auth 属性和策略),但使用我自己的方式来存储用户和声明数据,而不是使用Entity Framework包。

我想知道,是否有人知道如何以最简单的方式做到这一点?

Blazor 通过从内置身份验证状态提供程序获取身份验证状态来授权页面。您需要创建自己的并覆盖 GetAuthenticationState 方法。下面是一个使用 web assembly 并从 web 令牌授权用户以帮助您实现自己的逻辑的示例: https://chrissainty.com/securing-your-blazor-apps-authentication-with-clientside-blazor-using-webapi-aspnet-core-identity/