java - JWT 认证可以支持多个 API 吗?
问题描述
JWT 身份验证是否支持多个 API。因此,用户将拥有多个 API 的相同用户名/密码,并且可以使用相同的令牌同时登录多个 API。
我做了很多研究,但仍然找不到任何相关的东西。
解决方案
肯定是的。
JWT 令牌的主要优势之一是它们不需要中央身份验证机构,只要可以验证每个令牌(即 API 持有验证签名所需的密钥)。所以每个 API 都可以验证令牌的真实性,而令牌又持有授权数据,无需任何修改(除了验证 JWT 令牌)。
在多 API(多主体)设置中,会有一个令牌颁发服务(通过验证凭据和颁发令牌来处理身份验证请求)。然后,每个主体都可以接受/验证这些令牌,而无需对凭证一无所知。
此外,您可以使用aud
(Audience) 字段来区分 API 的使用。API 在验证 JWT 之后,可以检查该字段,并且仅当它可以在数据aud
中标识自己时才接受令牌。aud
查看此维基百科文章以获取更多信息
推荐阅读
- python - 如何隐藏/加密用 Python 编写的源代码?
- sql - 使用数据透视将文本行数据转换为 1 和 0 的列时列无效
- python - 有没有办法根据当前排序位置和另一列创建熊猫数据框列?
- laravel - Laravel Auth::check() 对超时会话没有响应
- python - 如何绘制蛋白质结构的自由能图?
- javascript - 一个一个地调用每个元素
- c# - c# asp.net 检查数据库中的列是否包含字符串
- ignite - WalAutoArchiveAfterInactivity 的 Nullpointer 异常
- arrays - dart / flutter 创建具有唯一键的地图,其中包含对象列表中唯一相关项目的子列表
- javascript - 如何克服打字稿,nodejs和角度中超出的最大调用堆栈大小