GridGain是否支持每个集群成员之间的SSL连接?如果是,您能告诉我该怎么做吗?
感谢,比尔
GridGain仅支持SSL用于客户端连接(GridGain提供.NET和C ++瘦客户端),但不支持节点之间的通信。
要为客户端连接启用SSL,请按照以下步骤配置服务器节点:
<bean id="grid.cfg" class="org.gridgain.grid.GridConfiguration">
<!-- Enable REST. -->
<property name="restEnabled" value="true"/>
<!-- Client connection configuration. -->
<property name="clientConnectionConfiguration">
<bean class="org.gridgain.grid.GridClientConnectionConfiguration">
<!-- Enable SSL. -->
<property name="restTcpSslEnabled" value="true"/>
<!-- Provide SSL context factory (required). -->
<property name="restTcpSslContextFactory">
<bean class="org.gridgain.client.ssl.GridSslBasicContextFactory">
<property name="keyStoreFilePath" "keystore/server.jks"/>
<property name="keyStorePassword" value="123456"/>
<property name="trustStoreFilePath" "keystore/trust.jks"/>
<property name="trustStorePassword" value="123456"/>
</bean>
</property>
</bean>
</property>
</bean>
您还需要在客户端配置上提供SSL上下文工厂。
Ignite(和GridGain)允许您对所有可能的连接使用SSL。要在节点之间使用SSL连接,请在IgniteConfiguration中定义属性sslContextFactory。
<bean id="cfg" class="org.apache.ignite.configuration.IgniteConfiguration">
<property name="sslContextFactory">
<bean class="org.apache.ignite.ssl.SslContextFactory">
<property name="keyStoreFilePath" value="keystore/server.jks"/>
<property name="keyStorePassword" value="123456"/>
<property name="trustStoreFilePath" value="keystore/trust.jks"/>
<property name="trustStorePassword" value="123456"/>
</bean>
</property>
</bean>
您还可以查看官方安全文档。https://apacheignite.readme.io/docs/ssltls