0

设想:

  • 在 1 个 Azure Kubernetes 服务 (AKS) 中,有 2 个 .NET 服务正在运行:Service1 和 Service2
  • Service1 和 Service2 都侦听 HTTP:80 和 HTTPS:443
  • 两种服务都运行 Istio 和 Istio 代理

为了确保同一集群中服务之间的流量加密,使用双向 TLS,

Service1 是否需要调用 Service2 HTTPS:443 端点?

或者

调用 Service2 HTTP:80 就足够了,其余的由 istio 处理?

4

1 回答 1

1

使用 Istio 时(除非您有非常严格的安全要求,这不太可能)应用程序通常不应启动 HTTPS 连接。

让 Istio 做自动 mTLS。实际上,当应用程序启动 HTTPS 时,您会丢失 Istio 功能。

在这种情况下,流量在 Istio 外部被加密,并且由于代理无法读取流量,您将失去遥测等功能。

也可以让 Istio 为外部调用(网格之外)启动 HTTPS 连接。这称为TLS 发起。但是,这需要一些配置,并且本身启动 HTTPS 连接的客户端库不适用于该连接

于 2021-04-02T06:39:03.923 回答