3.15. SSL 支持(HTTPS)

使用 JSSE 配置实用程序

从 Camel 2.9 开始,AHC 组件通过 Camel JSSE 配置实用程序 支持 SSL/TLS 配置。  这个实用程序可大大减少您需要编写的组件特定代码的数量,并在端点和组件级别进行配置。  以下示例演示了如何将 实用程序与 AHC 组件搭配使用。

组件的程序配置

KeyStoreParameters ksp = new KeyStoreParameters();
ksp.setResource("/users/home/server/keystore.jks");
ksp.setPassword("keystorePassword");

KeyManagersParameters kmp = new KeyManagersParameters();
kmp.setKeyStore(ksp);
kmp.setKeyPassword("keyPassword");

SSLContextParameters scp = new SSLContextParameters();
scp.setKeyManagers(kmp);

AhcComponent component = context.getComponent("ahc", AhcComponent.class);
component.setSslContextParameters(scp));

基于 Spring DSL 端点配置

...
  <camel:sslContextParameters
      id="sslContextParameters">
    <camel:keyManagers
        keyPassword="keyPassword">
      <camel:keyStore
          resource="/users/home/server/keystore.jks"
          password="keystorePassword"/>
    </camel:keyManagers>
  </camel:sslContextParameters>...
...
  <to uri="ahc:https://localhost/foo?sslContextParameters=#sslContextParameters"/>
...