kubernetes - 我可以使用 Ambassador 来验证 Kubernetes 集群内的服务到服务通信吗?
问题描述
我有一个带有服务的 Kubernetes 集群,我使用 Ambassador 作为外部世界和我的服务之间的 API 网关。
有了大使,我知道我可以使用我拥有的服务来检查传入请求的身份验证和授权,但这是否仅适用于来自集群外部的请求?
我也想拦截服务到服务的调用。
解决方案
我现在有同样的问题。大使将每个请求路由到身份验证服务(如果提供),身份验证服务可以是任何东西。所以你可以设置http basic auth、oauth、jwt auth等等。接下来要提到的重要一点是,您的服务可能会使用基于标头的路由(https://www.getambassador.io/reference/headers)。仅当存在承载(或类似的东西)时,请求才会命中您的服务,否则将失败。在您的服务中,您可以检查权限等。所以总而言之,大使可以帮助你,但你仍然需要自己编程。
如果您想从一开始就准备好一些东西或更高级的东西,您可以尝试 https://github.com/ory/oathkeeper或https://istio.io。
如果您已经找到了解决方案,那么知道会很有趣。
推荐阅读
- windows - 任务调度程序 - 任务注册被删除
- delphi - SysUtils.LoadPackage 替换 Aplication.OnMessage 处理程序
- c# - System.Diagnostics.Process.Start 用于 SQL 中的 .pdf 文件路径
- matlab - 将 IEC 61131-3 DINT 拆分为两个 INT 变量(PLC 结构化文本)
- php - Microsoft Graph API - 为作业获取评分“maxPoints”
- spring-boot - @RefreshScope 和 @Order
- javascript - 有没有办法通过使用 Konva js 向外/向内拖动圆周来调整圆的大小?
- css - 在中心获得离子无线电
- azure - 从 C# Web API 访问 Microsoft Graph
- java - 意图只显示只有一个参数的构造函数