166.4. SSL 支持
166.4.1. 使用 JSSE 配置实用程序
自 Camel 2.9 起,IRC 组件通过 Camel JSSE 配置实用程序支持 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