コンテンツに移動
ネットワーキング

Google Cloud Load Balancing で相互 TLS によるクライアント認証が可能に

2023年6月30日
Google Cloud Japan Team

※この投稿は米国時間 2023 年 6 月 17 日に、Google Cloud blog に投稿されたものの抄訳です。

このたび、フロントエンドの相互 TLS(mTLS)サポートのプレビュー版が公開されましたのでお知らせいたします。mTLS では、外部 HTTPS ロード バランシングを使って、クライアント証明書認証をオフロードできます。TLS オフロードとは、ロードバランサがサーバーに代わって、サーバーの ID 検証用の証明書をクライアントに提供する仕組みです。このたび、フロントエンドの mTLS オフロードがサポートされたことで、ロードバランサがクライアントからも証明書をリクエストし、それを使ってクライアントの ID を検証することが可能になります。

ユースケース

  1. mTLS のサポートは、規制基準などのコンプライアンス要件を満たす必要があるケース、たとえば、OpenBanking のような、ロードバランサが接続元クライアントの ID を認証する必要があるアプリケーションで役立ちます。

  2. mTLS を使えば、相互 TLS 認証に加えて、付加価値のあるセキュリティ サービスを構築でき、競合他社との差別化を図ることができます。

  3. IoT や各種産業において、デバイスがグローバルなロードバランサを利用して Google Cloud でホストされているサービスを呼び出す際に、相互 TLS を使ってこれらのデバイスを認証できます。

  4. Apigee X のノースバウンド トラフィックの認証において、グローバル外部 HTTPS ロードバランサが mTLS クライアントをサポートするようになりました。

  5. mTLS を使えば、Identity Aware Proxy などの Google セキュリティ ソリューションにおいて、Google でホストされているアプリケーションへのアクセス制御をクライアント証明書ベースで行えます。

相互 TLS を構成する

グローバル外部 HTTP(S) ロード バランシングで相互 TLS を設定する際は、ロードバランサが受信接続を認証する方法(クライアント証明書の認証に必要な信頼の構成など)を構成する必要があります。具体的には、以下を指定します。

  • サーバーの TLS ポリシー。ロードバランサが受信リクエストを認証する方法や、証明書検証でエラーが発生した場合の処理方法を指定します。

  • 信頼の構成。Certificate Manager のリソースを使って、ロードバランサがクライアント証明書の認証に使用する信頼チェーンを定義します。これにより、任意のサードパーティの認証局が発行したクライアント証明書、プライベートの認証局が発行した証明書、またはユーザーが生成した証明書を使用することが可能になります。

サポートされる機能

証明書の検証が完了すると、ロードバランサは、以下の情報をカスタム リクエスト ヘッダーとしてバックエンドに提供できます。

  • 証明書のフィンガープリント

  • 一部の一般的なフィールド(証明書のシリアル番号、SANS など)。ただし、証明書が信頼チェーンの検証を通過することが前提です

  • 検証結果と、検証エラー(発生した場合)

次のステップ

相互 TLS の提供はまだ始まったばかりです。近日中にリージョンの内部および外部のロードバランサに対応するほか、その他のご要望の多い機能も追加していく予定です。

この新機能によって、HTTPS をシームレスにデプロイし、顧客にスケーラブルで安全なサービスを提供できるようになれば幸いです。


- Google Cloud、プロダクト マネージャー Babi Seal
- Google Cloud、ソフトウェア エンジニア Joanna Solmon

投稿先