第10章 相互 Transport Layer Security の有効化
アプリケーションに Red Hat OpenShift Service Mesh を使用すると、複雑なマイクロサービス間の通信セキュリティーをカスタマイズできます。相互 Transport Layer Security (mTLS) は、二者が相互認証できるようにするプロトコルです。
10.1. 相互 Transport Layer Security (mTLS) について リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Service Mesh 3 では、ServiceMeshControlPlane リソースの代わりに Istio リソースを使用して mTLS 設定を行います。
OpenShift Service Mesh 3 では、PeerAuthentication および DestinationRule リソースを使用して、STRICT mTLS モードを設定します。TLS プロトコルバージョンは、Istio Workload Minimum TLS バージョン設定を通じて設定します。
mTLS 設定を適切に行うには、次の Istio リソースと概念を確認してください。
PeerAuthentication-
サイドカーが受け入れる mTLS トラフィックのタイプを定義します。
PERMISSIVEモードでは、プレーンテキストと mTLS トラフィックの両方が受け入れられます。STRICTモードでは、mTLS トラフィックのみが許可されます。 DestinationRule-
サイドカーが送信する TLS トラフィックのタイプを設定します。
DISABLEモードでは、サイドカーはプレーンテキストを送信します。SIMPLE、MUTUAL、ISTIO_MUTUALモードでは、サイドカーは TLS 接続を確立します。 Auto mTLS-
PeerAuthenticationモードの設定に関係なく、すべてのメッシュ間トラフィックがデフォルトで mTLS で暗号化されるようにします。Auto mTLSは、グローバルメッシュ設定フィールドenableAutoMtlsによって制御されます。これは、OpenShift Service Mesh 2 および 3 ではデフォルトで有効になっています。mTLS 設定はサイドカープロキシー間で完全に動作し、アプリケーションやサービスコードを変更する必要はありません。
デフォルトでは、PeerAuthentication は PERMISSIVE モードに設定されており、Service Mesh 内のサイドカーはプレーンテキストと mTLS で暗号化されたトラフィックの両方を受け入れることができます。