1.4. 配置加密


Data Grid Server 可以强制不同类型的 SSL/TLS 加密来保护 Hot Rod JS 客户端连接。

先决条件

  • 创建 Hot Rod JS 客户端可用于验证数据网格服务器身份的信任存储。
  • 如果您将 Data Grid Server 配置为验证或验证客户端证书,请根据情况创建密钥存储。

流程

  1. 打开 Hot Rod JS 客户端配置以进行编辑。
  2. 添加设置 enabled: true 标志的 ssl 方法。
  3. 提供特定于您使用的加密类型的任何其他配置。

1.4.1. 加密类型

热 Rod JS 客户端可以使用不同类型的加密来与 Data Grid 服务器协商安全连接。

Data Grid Server 身份

对于基本加密,您可以在配置中为 Data Grid 服务器证书添加签名证书或 CA 捆绑包,如下所示:

注意

要验证向 Data Grid Server 发布的证书,Hot Rod JS 客户端需要完整的证书链或以 Root CA 开头的部分链。

var connected = infinispan.client({port: 11222, host: '127.0.0.1'},
  {
    ssl: {
      enabled: true,
      trustCerts: ['my-root-ca.crt.pem']
    }
  }
);
信任存储

您可以以 PKCS12PFX 格式添加信任存储,如下所示:

var connected = infinispan.client({port: 11222, host: '127.0.0.1'},
  {
    ssl: {
      enabled: true,
      cryptoStore: {
        path: 'my-truststore.p12',
        passphrase: 'secret'
      }
    }
  }
);
客户端证书身份验证

如果在 Data Grid Server 配置中启用客户端证书身份验证,请添加密钥存储,如下例所示:

注意

在使用客户端证书身份验证时,您必须使用 EXTERNAL 身份验证机制配置 Hot Rod JS 客户端。

var connected = infinispan.client({port: 11222, host: '127.0.0.1'},
  {
    ssl: {
      enabled: true,
      trustCerts: ['my-root-ca.crt.pem'],
      clientAuth: {
        key: 'privkey.pem',
        passphrase: 'secret',
        cert:ssl 'cert.pem'
      }
    }
  }
);
Server Name Indication (SNI)

如果您使用 SNI 来允许 Hot Rod JS 客户端请求数据网格服务器主机名,请为与 Data Grid Server 配置中的主机名匹配的 sniHostName 参数设置一个值。

注意

sniHostName 参数默认为 localhost

var connected = infinispan.client({port: 11222, host: '127.0.0.1'},
  {
    ssl: {
      enabled: true,
      trustCerts: ['my-root-ca.crt.pem']
      sniHostName: 'example.com'
    }
  }
);
提示

默认情况下,热 Rod JS 客户端不允许自签名证书,这可能会导致开发或测试环境中没有公共证书颁发机构(CA)密钥的问题。

有关使用 Java keytool 创建签名证书的示例,请查看 Data Grid 代码教程

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部