代码之家  ›  专栏  ›  技术社区  ›  shreddish

使用公共微服务验证Api网关(Kong)

  •  0
  • shreddish  · 技术社区  · 7 年前

    我们有一个可以通过互联网公开访问的web应用程序。该应用程序在web服务器上运行,该服务器包含应用程序可以调用的单一API集(包括用户身份验证)。我们希望为用户提供一个“API”(例如//收集数据),以便用户从自己的代码中查询有关其帐户的有限数据集。这将允许他们使用我们为他们收集的数据编写自定义仪表板。

    最终用户将获得一个API密钥,通过Kong发出请求,然后Kong将使用HTTP GET/POST向web服务器执行API查询。由于我们的web服务器是公开的,我们需要一种方法来验证API(收集数据)的请求仅来自Kong。我对JWTs做了一些研究,似乎是一种可能的方法。简单地将web服务器发布的JWT交给Kong服务器有意义吗?然后,拒绝向没有Kong JWT的web服务器发送任何GET/POST。

    1 回复  |  直到 7 年前
        1
  •  1
  •   Cooper    7 年前

    因此,您希望您的Kong实例与上游服务器进行通信,其中包含一些只有您知道的秘密,以便您可以确定到上游服务器的流量来自您的Kong实例?

    https://getkong.org/plugins/request-transformer/ https://getkong.org/plugins/response-transformer/ 在响应客户端之前删除该标头)。

    实际上,这取决于上游服务器在请求验证方面支持什么。

    https://getkong.org/plugins/key-authentication/ 这样做。