2.3. Data Grid プロトコルの処理
Data Grid サーバーはルーターコネクターを使用して、同じ TCP ポート 11222 で複数のプロトコルを公開します。複数のプロトコルに単一のポートを使用すると、設定と管理が簡素化され、権限のないユーザーの攻撃対象領域が減少するため、セキュリティーが向上します。
Data Grid サーバーは、ポート 11222 を介して HTTP/1.1、HTTP/2、および Hot Rod プロトコル要求を次のように処理します。
- HTTP/1.1 アップグレードヘッダー
-
クライアントリクエストには
HTTP/1.1 アップグレードヘッダーフィールドが含まれ、Data Grid サーバーとの HTTP/1.1 接続を開始できます。次に、クライアントアプリケーションはUpgrade: protocolヘッダーフィールドを送信できます。protocolは Data Grid サーバーエンドポイントです。 - Application-Layer Protocol Negotiation (ALPN)/Transport Layer Security (TLS)
- クライアントアプリケーションは、Data Grid サーバーエンドポイントのサーバー名表示 (SNI) マッピングを指定して、安全な方法でプロトコルをネゴシエートします。
- Hot Rod の自動検出
- シングルポートルーター設定に Hot Rod が含まれている場合、Hot Rod ヘッダーを含むクライアント要求は自動的に Hot Rod エンドポイントにルーティングされます。
2.3.1. ALPN 用クライアントの設定 リンクのコピーリンクがクリップボードにコピーされました!
Data Grid サーバーと TLS ハンドシェイク時に、プロトコルネゴシエーションの ALPN メッセージを提供するようにクライアントを設定します。
前提条件
- 暗号化で Data Grid サーバーエンドポイントを有効にします。
手順
Data Grid サーバーとの ALPN/TLS エクスチェンジを処理する適切なライブラリーをクライアントアプリケーションに提供します。
注記Data Grid は、Java に Wildfly OpenSSL バインディングを使用します。
- トラストストアでクライアントを適宜設定します。
プログラムで
Hot Rod クライアントプロパティー
infinispan.client.hotrod.server_list = 127.0.0.1:11222 infinispan.client.hotrod.use_ssl = true infinispan.client.hotrod.trust_store_file_name = truststore.pkcs12 infinispan.client.hotrod.trust_store_password = trust_store_password
infinispan.client.hotrod.server_list = 127.0.0.1:11222
infinispan.client.hotrod.use_ssl = true
infinispan.client.hotrod.trust_store_file_name = truststore.pkcs12
infinispan.client.hotrod.trust_store_password = trust_store_password