繁体   English   中英

JWT 服务之间的令牌转发

[英]JWT token forwading between services

我有一个有问题的和一个潜在的解决方案,我想知道它是否是一个好的解决方案,或者是否存在更好的做事方式。
我有一个API A由带有 JWT 令牌的前端调用。
如果该服务没有解决方案,我希望该服务从另一个API B获取解决方案。

转发我从 Front User 收到的 JTW 令牌并以该用户身份验证到API B以请求我的数据(知道 JWT 可能携带有用信息)是个好主意吗?
我是否应该删除 JWT 并以与此 API 不同的方式进行身份验证?
这些事情是否有行业标准或良好实践?

JWT 访问令牌旨在在 API 之间转发。 这样做可以维护可审核的用户身份。 每个 API 然后验证 JWT 签名、发行者、受众、范围和声明。 这有时被称为zero trust API 架构 - 但有一些警告。

范围

根据业务数据领域设计这些。 例如,客户有范围orders shipping并调用订单 API。订单 API 然后可以将 JWT 转发给运输 API。每个 API 必须检查它需要的范围。

相同的信任级别

与往常一样,您需要考虑威胁。 我的上述建议是针对将 API 拆分为微服务的,通常是出于技术原因,例如较小的代码大小和多个开发团队。

不同的信任级别

考虑转发一个JWT到一个大公司分部的一个Shipping API。 你可能不相信给他们orders scope。在这种情况下,使用代币交换获得一个新代币,只有shipping scope,然后将其转发给上游 API。

概括

始终致力于转发维护可审核用户身份的 JWT。 使用范围作为一种成分来确保最小特权。 还要评估威胁,以防止潜在的攻击。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM