【发布时间】:2019-02-17 23:52:20
【问题描述】:
我对“无状态”概念有点困惑。我有一种情况,我的应用程序基于无状态架构。使用 JWT 令牌进行身份验证(不使用 KeyCloack 和 OpenAM 等身份验证提供程序)。
这是一个简单的机制,前端记录到后端,后端使用包含用户数据(包括 ID、角色...)的 JWT 令牌进行回答。令牌将在每个 http 请求的标头中发出。
现在涉及到其他安全概念(除了我们在数据上添加安全性的角色)。我的问题是,即使有良好的安全配置(创建组、隐藏组内的详细信息、仅将组 ID 放入令牌中),大小也会快速增长。
由于我处于无状态上下文中,因此每个 http 请求都必须提供安全上下文,以便服务器可以响应它。
大多数服务器都有 8K 标头大小限制,据我所知,建议将 JWT 令牌放在标头中。
我的问题是如何在不妥协的情况下完成这项工作: - 无状态架构:服务器不得存储任何会话信息。 - 身份:要执行请求,服务器必须知道用户可以访问哪些角色和数据范围 - 标头限制:8K(我可以增加,但我认为这不是一个好主意)。
感谢您的帮助。
【问题讨论】:
标签: angular security jwt stateless