c# - 使用 JWT 的 Asp Net Core 身份验证
问题描述
我目前正计划在 Blazor Webassembly (NET Core 3.1) 中制作一个在线调度程序。由于我大部分时间都在编写 Intranet 应用程序,因此我有点担心客户端将使用的 Web api 的安全方面。
目前,我们正在从后端向客户端发出带有用户名和令牌有效性(以小时为单位)的 JWT 令牌,并将所述令牌存储在浏览器的本地存储中。由于用户可以访问令牌并且可以从中提取声明,因此我有什么需要注意的吗?然后在用户登录后将令牌设置为 HttpClient 的 DefaultRequestHeader。如果用户通过身份验证,则 cusotm 中间件会验证令牌并在范围服务中设置用户名。
用户(客户和员工)存储在不可公开访问的数据库中。没有通过网站注册用户的选项。用户可以在公司的多个位置(不能在同一时间/一天)创建约会,但是您如何限制用户在一个位置使用 api 端点而不在另一个位置使用?由于可以操纵声明,我真的没有信心将可访问的位置写入 jwt。
一些动作还需要在四眼主体中执行,例如,第二个用户需要登录(30 秒有效期,如果可能,请刷新)以确认动作。是否存在能够处理此类事情的现有机制?
欢迎任何建议、来源或想法。如有必要,请随时询问更多详细信息。
解决方案
推荐阅读
- git - 当github操作在github中失败时如何创建Jira任务
- python - 从嵌套列表 [[name1,score],[name2,score],...] 中,如何删除得分最低的名称?
- r - 如何用非事件的开始时间和结束时间填充每 2 行
- javascript - 如果在 1 分钟内未收到响应(NodeJs),我如何返回错误
- c# - 如何读取 EPC 和 TID 执行库存(Zebra Xamarin RFID SDK)?
- python - Python pip - 无法更新 pip
- php - Laravel 路由语言环境中间件无法与模型绑定一起使用
- firebase - 如何从 FirebaseAuthException 正确捕获异常
- postgresql - Spring JPA postgresql-错误查询结构与函数结果类型不匹配
- azure - 更新 Azure ML 实时终结点