为 ThingWorx 配置 Akka TLS 通信
* 
分布式订阅功能可在 ThingWorx 9.4 及更高版本中使用。
配置 Akka TLS 通信
在所提供的 ThingWorx 图像中,Akka SSL 默认处于禁用状态。这对于测试和开发非常有用,但不适用于生产。如果要在生产方案中使用 Akka SSL 通信妥善保护 ThingWorx Platform,PTC 强烈建议将其启用。
配置 Akka TLS 通信
可将以下环境变量用于容器配置。这些变量可用于 Dockerfile 下载中包含的 docker-compose.yml 文件,或 Thingworx Dockerfile 下载中相应的 TWXdockerfile>docker-compose-[postgrtes, mssql, azuresql]-clustered/.env 文件。
变量名称
Docker Compose 默认值
备注
AKKA_SSL_ENABLED
true
打开/关闭 TLS Akka 通信。
AKKA_KEYSTORE
/certs/keystore.jks
keystore 的相对路径,其中应包含私钥。路径必须与现有卷匹配。可存储在 certs 卷内。例如,/certs/keystore.jks
AKKA_TRUSTSTORE
/certs/truststore.jks
keystore 的相对路径,其中应包含公钥。路径必须与现有卷匹配。可存储在 certs 卷内。例如,/certs/truststore.jks
AKKA_KEYSTORE_PASSWORD
未设置默认值
AKKA_KEYSTORE 中的密码。
AKKA_TRUSTSTORE_PASSWORD
未设置默认值
AKKA_TRUSTSTORE 中的密码。
设置完变量后,请执行下列步骤:
* 
必须将 keystore.jkstruststore.jks 复制到 Thingworx Platform Docker 容器中。
1. keystore.jkstruststore.jks 文件放在与 docker-compose.yml 文件相同的目录中。
2. 取消 docker-compose.yml 文件中属于平台服务的以下行的备注:
# Use this to mount custom key and truststores for akka tls communication
- ./keystore.jks:${AKKA_KEYSTORE}
- ./truststore.jks:${AKKA_TRUSTSTORE}
启动过程中,同时将这两个文件复制到容器内。
3. 取消 docker-compose.yml 文件中属于 x-platform 部分的以下行的备注:
# Akka config for SSL
AKKA_SSL_ENABLED: ${AKKA_SSL_ENABLED}
AKKA_KEYSTORE: ${AKKA_KEYSTORE}
AKKA_TRUSTSTORE: ${AKKA_TRUSTSTORE}
AKKA_KEYSTORE_PASSWORD: ${AKKA_KEYSTORE_PASSWORD}
AKKA_TRUSTSTORE_PASSWORD: ${AKKA_TRUSTSTORE_PASSWORD}
这对您有帮助吗?