サイドカーmTLS(さいどかーえむてぃーえるす)
最終更新:2026/4/28
サイドカーmTLSは、アプリケーションコンテナとは別に稼働するプロキシコンテナを用いて、相互TLS認証を実現するセキュリティ手法である。
別名・同義語 mTLSプロキシサービスメッシュmTLS
ポイント
サービスメッシュにおける一般的な実装方法であり、アプリケーションコードの変更なしに暗号化通信を確立できる利点がある。複雑な設定が必要となる場合がある。
サイドカーmTLSとは
サイドカーmTLSは、アプリケーションコンテナの傍らに配置されるプロキシコンテナ(サイドカー)を用いて、アプリケーション間の通信を暗号化し、相互TLS認証を行うセキュリティモデルです。各コンテナが自身の証明書と秘密鍵を持ち、通信時に相互に認証することで、なりすましや盗聴を防ぎます。
従来のmTLSとの違い
従来のmTLSでは、アプリケーション自身がTLS証明書を管理し、通信処理を実装する必要がありました。これに対し、サイドカーmTLSでは、サイドカープロキシがTLS証明書の管理や暗号化通信の処理を代行するため、アプリケーションコードの変更を最小限に抑えることができます。
サービスメッシュとの関係
サイドカーmTLSは、サービスメッシュの重要な構成要素の一つです。サービスメッシュは、マイクロサービス間の通信を管理するためのインフラストラクチャであり、サイドカープロキシはその通信を傍受し、セキュリティポリシーを適用します。
実装例
IstioやLinkerdなどのサービスメッシュプラットフォームでは、サイドカーmTLSが標準機能として提供されています。これらのプラットフォームを利用することで、比較的容易にサイドカーmTLSを導入することができます。
メリット
- アプリケーションコードの変更が不要
- セキュリティポリシーの一元管理
- 通信の可観測性の向上
デメリット
- サイドカープロキシの導入と管理の複雑さ
- パフォーマンスへの影響(サイドカープロキシのオーバーヘッド)
- 証明書管理の複雑さ