找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 342|回复: 0

使用 Istio 管理服务之间的相互 TLS 后院

[复制链接]

1

主题

0

回帖

7

积分

新手上路

积分
7
发表于 2023-10-2 15:16:27 | 显示全部楼层 |阅读模式
本帖最后由 mitaparvin 于 2023-10-3 12:30 编辑

时我们反复面临的挑战之一是如何最好地保护参与服务之间的通信。一种选择是在应用程序层管理安全性,这意味着在应用程序代码本身中实现特定的身份验证机制。然而,这种方法很快就会变得繁重,占用开发人员的时间,而开发人员应该专注于实现实际的业务逻辑。 我们想,如果开发人员不必担心在应用程序代码中实现身份验证机制,而是有一个神奇的解决方案可以在其服务之间提供安全通信,那不是很棒吗? 这就是服务网格,特别是Istio发挥作用的地方。Istio 因引入安全的服务到服务通信而无需更改任何应用程序代码而受到赞誉。 在这篇文章中,您将了解 Istio 如何使用相互传输层安全性 (TLS) 来保护服务之间的通信,如何针对更高级的用例微调这些配置,以及 Backyards(现在的 Cisco Service Mesh Manager )如何简化这个过程。 Istio 中的相互 TLS Istio 提供双向 TLS 作为服务间身份验证的解决方案。

Istio 使用sidecar 模式,这意味着每个应用程序容器都有一个 sidecar Envoy代理容器在同一个 pod 中运行。 当服务接收或发送网络流量时,流量始终 首先通过 Envoy 代理。 当在两个服务之间启用 mTLS 时,客户端和服务器端 Envoy 代理会在发送请求之前验证彼此的身份。 如果验证成功,则客户端代理会对流量进行加密,并将其发送 电话号码列表 到服务器端代理。 服务器端代理解密流量并将其在本地转发到实际的目标服务。Istio 中的相互 TLS 现在,我们如何验证服务之间发送的流量实际上是加密的? 一种方法是检查度量标签。Istio 将此标签设置为请求是否已实际加密。 Connection Security Policy   mutual_tls 如果您使用Backyards(现在的思科服务网格管理器),那就更简单了。





继续阅读以找出原因。 使用 Istio 管理 mTLS Istio 中的相互 TLS 设置可以使用身份验证策略进行配置,该策略适用于服务接收的请求。 如果不是自动 mTLS 功能,我们就必须为目标服务定义目标规则,但在本指南中,我们将依赖自动 mTLS 功能,并在其打开时介绍必要的配置。 范围 在 Istio 中,我们可以通过三个粒度级别来定义 mTLS 设置。对于每项服务,Istio 应用最窄的匹配策略。顺序是:特定于服务、命名空间范围、网格范围。 网状宽 网格范围内的设置会影响网格中的所有服务。下面将所有服务的mTLS模式设置。


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Discuz! X

GMT+8, 2024-9-20 10:53 , Processed in 0.075895 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表