如何使用启用"mtls"的基于 Istio 的服务?



目前,我想引入 istio 作为我们微服务的服务网格框架。我已经玩过一段时间(<1 周(,我的理解是 Istio 确实提供了一种简单的方法来保护服务到服务通信。许多(或全部?(Istio 文档/文章提供了一个示例,将 istio-proxy (envoy( 安装为挎斗容器的客户端和服务器如何使用mtls方法建立安全通信。

但是,由于使用我们的服务(将被迁移到使用 istio(的现有客户端(我没有任何控制权(没有 istio,我仍然不太了解我们应该如何做得更好。

  • 是否有任何教程或示例可以更好地提供我的用例?
  • 非基于 istio
  • 的客户端如何使用mtls来消费我们基于 istio 的服务?考虑使用基本的curl命令来模拟这样的事情。
  • 此外,我正在考虑将特定的服务帐户(kubernetes,gcp iam 服务帐户等(分发给客户端,以限制客户端在调用我们的服务时的权限。我有很多关于这些东西的问题:gcp iam 服务帐户、istio、rbac、mtls、jwt 令牌等如何有助于保护我们的服务 API?

有什么建议吗?

您想通过公共互联网上的 SSL 将第三方添加到网络外部的 Istio 网格中吗?

我不认为 Istio 真的是为了联合外部服务,但你可以在网络边缘有一个 istio 入口网关代理,用于路由进出你的应用程序。

https://istio.io/docs/tasks/traffic-management/ingress/

如果您正在构建微服务,那么您肯定有一个端点或网关,这对我来说似乎更明智,请尝试 Apigee 或其他东西。

最新更新