我们正在更改应用程序身份验证体系结构,以切换到Json Web令牌。

实际上,传入的请求首先通过API网关传递,该网关将请求分派到我们堆栈中的各种微服务。

每个请求中传递的JWT的身份验证和验证都是在网关中完成的。

认证后,您将如何处理JWT?


将它“按原样”传递给后续的微服务?
在网关中对其进行解码,仅将解码后的有效负载传递给服务?


我在两种解决方案中都看到了利弊:


赞成:我们一直保持标准的Authentification http标头。
缺点:我们必须在每个服务中解码令牌。
Pro:令牌已被解码,可直接用于服务中。
缺点:我们必须使用非标准的http标头来传递解码后的有效负载。


在这种情况下有什么“标准”方法吗?

你怎么看 ?

谢谢 !

最佳答案

按原样通过JWT。解码的开销可以忽略不计,但是如果您的网关由于某种原因被旁路,则可以使系统更加安全。或者,也许您将来决定直接与您的微服务通信。

10-05 20:34
查看更多