首页 > 解决方案 > Ingress 的 Istio 可编程路由

问题描述

我一直在寻找 Istio 在入口控制器上具有可编程路由的能力,以作为 Kong API 网关插件的可靠替代品。一个简单的例子是在 Istio 虚拟服务中有一个规则,当用户在后面的应用程序中的许可证过期时拒绝 API 调用。

这意味着,入口控制器能够查询应用程序内部的某些内容以确定许可证状态,并根据该响应阻止/允许来自特定客户的流量(由标头标识)

这是我用 Kong 插件做的事情,但我在 Istio 上没有找到类似的东西。

标签: kuberneteskubernetes-ingressistiokong

解决方案


拒绝用户请求的最简单解决方案是在身份验证过程中附加该信息(到 cookie 或 jwt 令牌),然后使用虚拟服务拒绝这些请求。

另一个解决方案(更复杂)是使用带有 Lua 脚本的 Envoy 过滤器,您可以在其中添加自定义逻辑并决定是否要继续处理请求。


推荐阅读