Under active development Content is continuously updated and improved

Istio

by CNCF

Service mesh providing traffic management, security, and observability for Kubernetes

Official Docs

Under Construction: This guidance is being actively developed and verified. Content may change.

Authoritative Sources

Key guidance documents from authoritative organizations. Click to view the original source.

NIST SP 800-204 §1: "A service mesh is a dedicated infrastructure layer that facilitates service-to-service communication through service discovery, routing and internal load balancing, traffic configuration, encryption, authentication and authorization, metrics, and monitoring." MS-SS-4: "Client to API gateway as well as Service to Service communication should take place after mutual authentication and be encrypted (e.g., using mutual TLS (mTLS) protocol). Frequently interacting services should create keep-alive TLS connections." MS-SS-1: "Authentication to microservices APIs that have access to sensitive data should not be done simply by using API keys. Access to such APIs should require authentication tokens that have either been digitally signed or is verified with an authoritative source."

Configuration Examples(1)

·

SM-DR1: "All service-to-service communications within the cluster should be authenticated." SM-DR4: "The credentials used for authentication should be short-lived and frequently rotated." SM-DR6: "All traffic between services should be encrypted using mutual TLS." Istio implements these requirements through PeerAuthentication and AuthorizationPolicy resources.

Configuration Examples(3)

·

NIST SP 800-204B §1: "With the disappearance of a network perimeter because of the need to provide ubiquitous access to applications from multiple remote locations using different types of devices, it is necessary to build the concept of zero trust into the application environment." §4.6.6 APE-SR-3: "A default policy should be authored in the system that rejects all requests that are unauthenticated, mandates that service and end-user credentials be present on every request, restricts all communication to services within the application's own namespace." ISMC-SR-1: "The signing certificate used by the service mesh's CA module should be rooted in the organization's existing Public Key Infrastructure (PKI)."

Configuration Examples(3)

·

While focused on K8s, CIS benchmarks network segmentation that Istio enhances through service mesh policies and mTLS.

Configuration Examples(1)

·

Official security hardening guide covering mTLS configuration, authorization policies, certificate management, and secure gateways.

Configuration Examples(9)

·

SOC 2 CC6.7: "The entity restricts the transmission, movement, and removal of information to authorized internal and external users and processes, and protects it during transmission." Istio implements automatic mTLS encryption for all service-to-service communication, directly supporting CC6.7 requirements for protecting data in transit with AES-256 encryption and strong cipher suites. Source: AICPA Trust Services Criteria.

ISO 27001:2022 A.8.24: "Rules for the effective use of cryptography, including cryptographic key management, shall be defined and implemented." Istio provides automatic certificate management and key rotation through its control plane, implementing cryptographic controls that secure the confidentiality, integrity, and authenticity of service communications as required by A.8.24. Source: ISO/IEC 27001:2022 Annex A.

CCM IAM-02: "Identify and authenticate all users with a unique ID and manage authentication credentials in accordance with policies." CCM IAM-14: "Access credentials for service accounts shall be short-lived and frequently rotated." Istio implements workload identity through SPIFFE certificates with automatic rotation, directly supporting CCM IAM controls for service authentication. Source: CSA Cloud Controls Matrix v4.0.

Verification Commands

Commands and queries for testing and verifying security configurations.

Check mTLS mode for a namespace CLI
istioctl analyze -n {namespace} | grep -i 'mtls\|tls'
List all PeerAuthentication policies CLI
kubectl get peerauthentication -A
List all AuthorizationPolicies CLI
kubectl get authorizationpolicy -A
Check proxy configuration for a pod CLI
istioctl proxy-config cluster {pod-name}.{namespace}
Verify mTLS between services CLI
istioctl authn tls-check {pod-name}.{namespace}
View secret details for TLS certs CLI
istioctl proxy-config secret {pod-name}.{namespace}
Check Istio security configuration CLI
istioctl analyze --all-namespaces | grep -E "IST0|Warning|Error"
Debug authorization policy decisions CLI
kubectl logs -n istio-system -l app=istiod | grep -i authz

Related Controls

Security controls from various frameworks that relate to Istio.

Related Technologies