3

我们正在更改我们的应用程序身份验证架构以切换到 Json Web Token。

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

每个请求中传递的 JWT 的认证和验证都是在 Gateway 中完成的。

认证后你会用 JWT 做什么?

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

我在这两种解决方案中都看到了优缺点:

  1. 优点:我们一直保留一个标准的 Authentification http 标头。 缺点:我们必须在每个服务中解码令牌。

  2. 优点:令牌已经被解码并可以直接在服务中使用。 缺点:我们必须使用非标准的 http 标头来传递解码的有效负载。

在这种情况下是否有任何“标准”方式?

你怎么看 ?

谢谢 !

4

1 回答 1

0

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

于 2019-02-07T07:58:18.713 回答