使用K8S ServiceAccount验证Istio中的服务非常有趣。这是否意味着我们必须启用mTLS才能使用此功能?
答案 0 :(得分:0)
实际上,Istio用两种用于标识和流量管理操作的单独方法来表示安全概念:Authentication和Authorization。但是,作为每个安全基础架构,Istio网格都需要在目标服务之前定义Identity,以便从基础身份验证策略中获得决定,如何由{{最初建立传输和服务到服务的身份验证。 3}};授权策略可用于启用整个命名空间中的基于角色的访问控制(Pilot)机制,对象内部RBAC中沿Istio网格的对象内的服务级别和方法级别的访问控制。
相互Mixer身份验证是在启用Envoy TLS的特定Istio网格对象内通过Envoy proxy进行服务到服务通信的安全方式;因此sidecar将创建TLS证书清单并执行策略规则。
您可能可以启动mTLS认证Citadel,也可以通过手动和自动辅助工具globally启动。
身份验证策略在injection内的客户端上传播其规则,因此您可以选择trafficPolicy:
启用TLS模式:mode: ISTIO_MUTUAL
或禁用
trafficPolicy:
tls:
mode: DISABLE
我建议您通过相关的实际示例Destination rules找到有关ISTIO安全模型的一些相关信息。