c# - Angular 和 Json Web 令牌
问题描述
我有一个由 Angular 应用程序使用的 .net core 2.2 API 项目。为了保护 API,我使用了 JWT。API 和 SPA 都是内部应用程序。
我将 IdentityServer4 与资源所有者密码授予类型一起使用。我听说不建议这样做,但是为每个用户分配了不同的角色,这些角色必须放在 JWT 的角色声明中。这允许 .net 核心授权数据注释授予和限制对每个路由的访问。
我现在的流程是用户登录到 SPA,它将凭据发送到 API。API 使用 Identity 来验证凭据。验证成功后,API 向 IdentityServer4 发送请求以获取 JWT,然后将其发送回 SPA。然后将 JWT 保存到本地存储以用于每个请求。
我想知道我是否应该从 SPA 直接从 IdentityServer4 请求令牌(IS4 可以访问身份上下文并验证 un/pw)?还有我忽略的流程中的任何其他重大缺陷。
解决方案
推荐阅读
- svn - 如何迁移具有 svnadmin 的 SVN 存储库:svndiff 数据解压失败
- laravel - Laravel 命名约定数据透视表
- python - 如何使用带有多个 URL(输入)的 Selenium、Bs4 和 Docx 使用 Python 进行 WebScrape 到多个输出 Docx 文件中?
- vue.js - Vue警告:属性或方法“item”未在实例上定义,但在渲染期间被引用
- reactjs - 在我的 Todo ReactApp 中,我使用的是通量。使用 useEffect 我添加了一个监听器,但是当 Todostore 更新页面时不会重新呈现。为什么不?
- javascript - textarea 的 quill 文本编辑器无法与 bootstrap 一起正常工作
- sql - 将 UTF-8 文本文件中的 varchar 插入 MSSQL 表
- spring-boot - 如何使用 Embedded MQ 为 IBM MQ 编写测试用例?
- python - 在 Python 中使用可变数量的图像填充列表
- azure - 有没有办法更改逻辑应用默认时区?