166.4. SSL サポート
166.4.1. JSSE 設定ユーティリティーの使用
Camel 2.9 の時点で、IRC コンポーネントは Camel JSSE Configuration Utility を介した SSL/TLS 設定をサポートしています。このユーティリティーは、記述する必要があるコンポーネント固有のコードの量を大幅に削減し、エンドポイントおよびコンポーネントレベルで設定できます。次の例は、IRC コンポーネントでユーティリティーを使用する方法を示しています。
エンドポイントのプログラムによる設定
KeyStoreParameters ksp = new KeyStoreParameters(); ksp.setResource("/users/home/server/truststore.jks"); ksp.setPassword("keystorePassword"); TrustManagersParameters tmp = new TrustManagersParameters(); tmp.setKeyStore(ksp); SSLContextParameters scp = new SSLContextParameters(); scp.setTrustManagers(tmp); Registry registry = ... registry.bind("sslContextParameters", scp); ... from(...) .to("ircs://camel-prd-user@server:6669/#camel-test?nickname=camel-prd&password=password&sslContextParameters=#sslContextParameters");
エンドポイントの Spring DSL ベースの設定
... <camel:sslContextParameters id="sslContextParameters"> <camel:trustManagers> <camel:keyStore resource="/users/home/server/truststore.jks" password="keystorePassword"/> </camel:keyManagers> </camel:sslContextParameters>... ... <to uri="ircs://camel-prd-user@server:6669/#camel-test?nickname=camel-prd&password=password&sslContextParameters=#sslContextParameters"/>...
166.4.2. 従来の基本設定オプションの使用
次のように、SSL 対応の IRC サーバーに接続することもできます。
ircs:host[:port]/#room?username=user&password=pass
デフォルトでは、IRC トランスポートは SSLDefaultTrustManager を使用します。独自のカスタムトラストマネージャーを提供する必要がある場合は、次のように trustManager
パラメーターを使用します。
ircs:host[:port]/#room?username=user&password=pass&trustManager=#referenceToMyTrustManagerBean