Blazor服务器和Web API之间的自定义身份验证

时间:2020-02-20 18:27:59

标签: authentication blazor-server-side

考虑使用IIS托管的Blazor服务器开发的前端Web App和数据库所在的另一台计算机上的另一IIS托管的后端Web应用程序,这是可以实现的两方之间的最佳身份验证机制?

我不能使用外部提供程序,所以我不能依赖Oauth 2。

我想到的最简单的机制可以总结如下:

1)前端登录->将用户名和密码发送到Web API;

2)Web API针对数据库检查凭据,并生成带有声明的新jwt令牌并将其发送到前端;

3)前端接收令牌并将其存储在浏览器的本地存储中,并根据Web API的每次请求将其发送;

4)Web API检查令牌的有效性,如果接收到的令牌即将到期,则最终会生成一个新的令牌。

所有这些显然都在HTTPS中完成。

我的疑问:

  • 既然我在C#类中获得令牌,如何将令牌存储在本地存储中?
  • 如果我需要利用Blazor的内置机制来授权用户查看视图的某些部分怎么办?

我的计划中缺少什么吗?

谢谢:)

0 个答案:

没有答案