authentication - 在 ASP 中分离前端和后端服务身份验证。网络核心
问题描述
我为我的 Web 应用程序创建了两个单独的项目:
- 一个实现常用 REST API 的 Web API,我称之为后端
- 一个剃须刀页面网络应用程序,它是我的前端
(基本上遵循 Jeffrey T. Fritz 在他的8 小时演示中所做的,因为它看起来像是一个分离良好的架构)这意味着两者都运行在服务器端。我已经在我的前端添加了“个人用户”身份验证选项,它创建了一个存储用户数据的数据库,我可以简单地根据那里的登录来授权页面。据我了解,此身份验证。选项基本上意味着前端在它的数据库中管理它自己的一组用户。
我缺少的是使用相同的授权保护该 Web API,因此人们将无法匿名使用该 API。怎么可能呢?如果我想切换到基于 Azure 的身份验证,解决方案会有所不同吗?
我想前端必须将一些与用户相关的数据附加到请求中,然后后端会以某种方式对其进行验证。(但我无法想象如果它不真正了解身份验证服务,也许它必须是一个可供两者访问的单独实体?在这种情况下,我应该跳过我所拥有的并直接进入 Azure 吗?)
注意:我对安全性(以及整个 Web 应用程序)相当陌生。
解决方案
出于安全考虑,可能值得一看 JWT Tokens。它是一种非常标准的、众所周知的保护 Web 应用程序的模式/方法。这是一个更“完整”的示例描述:https ://garywoodfine.com/asp-net-core-2-2-jwt-authentication-tutorial/
您将能够在一个地方设置安全性,并使用它来验证两个应用程序
推荐阅读
- java - latlng 不能为空 - 自动完成中需要一个位置
- python - pycharm-package/main/main 在 tmp 中不存在,我该如何解决?
- ios - 无法使用 Alamofire 上传图片
- python - 按条件删除行
- javascript - 将 LINQ 查询响应从 C# 传输到 JavaScript 作为字典
- linq - 我不知道如何在带有多个表的 linkq 中进行排序
- azure - 如何使用客户端密码通过 Powershell 访问 Azure WebApp
- asp.net-core - Razor 类库 (RCL) 中带有静态内容的 404
- android - 密码切换图标 textinputlayout 覆盖错误图标
- grafana - 跟踪:TypeError:f.getRuleSeverity 不是函数