首页 > 解决方案 > 通过代理验证 Istio 令牌

问题描述

Istio 支持AuthZAuthN服务,但是有没有办法通过代理实现令牌验证?

示例:用户/客户端向 Service-A 发送请求,请求命中 istio-ingressGateway,如果令牌有效,则网关通过另一个服务(验证服务)验证令牌用户/客户端如果不发送错误,则可以获取用户数据等效响应。

视觉示例

标签: validationkubernetesistioistio-gateway

解决方案


您可以使用Netflix Zuul编写一个微网关服务,该服务将作为您的 Istio 网关的登陆服务。它可以使用快速令牌验证Zuul filters,然后将请求转发到所需的服务或返回令牌错误响应。您可以使用此服务来发布令牌并托管 JWT 令牌的 JWK 密钥。 我已经为此编写了一个 Java 实现。

否则,您可以使用内部 Nginx 服务器作为所有请求的登陆点,然后使用http_auth_request_module它进行快速身份验证,然后代理转发到其他服务。您可以在Nginx 文档中找到它。

不幸的是,到目前为止,我还没有找到 Istio 提供的任何东西。


推荐阅读