This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.2.6. 在 Service Mesh 中自定义安全性
查看不再支持的 Red Hat OpenShift Service Mesh 发行版本的文档。
Service Mesh 版本 1.0 和 1.1 control plane 不再被支持。有关升级服务网格 control plane 的详情,请参阅 升级 Service Mesh。
有关特定 Red Hat OpenShift Service Mesh 发行版本的支持状态的信息,请参阅产品生命周期页面。
如果您的服务网格应用程序由 一 组复杂的微服务组成,您可以使用 Red Hat OpenShift Service Mesh 来定制这些服务间的通信安全性。OpenShift Container Platform 的基础架构以及 Service Mesh 的流量管理功能可帮助您管理应用程序的复杂性,并为微服务提供服务和身份安全。
2.6.1. 启用 mutual Transport Layer Security(mTLS) 复制链接链接已复制到粘贴板!
Mutual Transport Layer Security(mTLS)是一个双方可以同时相互验证对方的协议。在一些协议(IKE、SSH)中,它是身份验证的默认模式,在其他协议中(TLS)是可选的。
mtls 可在不更改应用程序或服务代码的情况下使用。TLS 完全由服务网格基础架构处理,并在两个 sidecar 代理之间进行处理。
默认情况下,Red Hat OpenShift Service Mesh 设置为 permissive 模式,Service Mesh 的 sidecar 接受明文网络流量以及使用 mTLS 加密的网络连接。如果网格中的服务需要与网格外的服务进行通信,则 strict 模式的 mTLS 可能会破坏这些服务之间的通信。在将工作负载迁移到 Service Mesh 时使用 permissive 模式。
2.6.1.1. 在网格中启用 strict 模式的 mTLS 复制链接链接已复制到粘贴板!
如果您的工作负载没有与网格之外的服务进行通信,且只接受加密的连接不会破坏这些通信,则可以在您的网格间快速启用 mTLS。在 ServiceMeshControlPlane 资源中将 spec.istio.global.mTLS.enabled 设置为 true。operator 创建所需资源。
2.6.1.1.1. 为特定服务的入站连接配置 sidecar 复制链接链接已复制到粘贴板!
您可以通过创建一个策略来为各个服务或命名空间配置 mTLS。
2.6.1.2. 为出站连接配置 sidecar 复制链接链接已复制到粘贴板!
创建一个目标规则将 Service Mesh 配置为在向网格中的其他服务发送请求时使用 mTLS。
2.6.1.3. 设置最小和最大协议版本 复制链接链接已复制到粘贴板!
如果您的环境对服务网格中的加密流量有具体要求,可以通过在 ServiceMeshControlPlane 资源中设置 spec.security.controlPlane.tls.minProtocolVersion 或 spec.security.controlPlane.tls.maxProtocolVersion 来控制允许的加密功能。这些值在 control plane 资源中配置,定义网格组件在通过 TLS 安全通信时使用的最小和最大 TLS 版本。
默认为 TLS_AUTO,且不指定 TLS 版本。
| 值 | 描述 |
|---|---|
|
| default |
|
| TLS 版本 1.0 |
|
| TLS 版本 1.1 |
|
| TLS 版本 1.2 |
|
| TLS 版本 1.3 |