Experience Service コンフィギュレーション内の機密情報の暗号化
次のコンフィギュレーションパラメータは、機密情報を保存します。
• db.connectionString
• authentication.authorization.appKey
• proxies.0.appKey
• thingworxMetrics.appkey
• vdp.username
• vdp.password
• httpsCertPassphrase
• authentication.openid.clientSecret
• authentication.openid.session.secret
パラメータ値を暗号化して、権限のないユーザーがこの機密情報にアクセスする可能性を減らすことができます。Experience Service を起動する際にコマンドラインで --encryptConfiguration オプションを渡して、機密性の高い値を暗号化します。次に例を示します。
start-es.sh --encryptConfiguration
このコマンドラインオプションを使用して Experience Service を起動すると、機密パラメータ値の暗号化されたバージョンで configuration.json ファイルが書き換えられます。コンフィギュレーションが暗号化された後は、コンフィギュレーション内の機密情報が変更されて再度暗号化する必要がない限り、この --encryptConfiguration オプションを使用して Experience Service を起動する必要はなくなります。
コンフィギュレーションを暗号化するときに、AES 256 アルゴリズムを使用して機密情報の暗号化と暗号解読に使用するキーが Experience Service によって生成されます。このキーは、Experience Service を --encryptConfiguration オプションで開始したユーザーのホームディレクトリにある .ves ディレクトリに保存されます。このキーは、権限のないユーザーが機密情報を解読できないように保護する必要があります。
コンフィギュレーションが暗号化された後に Experience Service が再起動された場合、Experience Service は Experience Service を開始しようとしているユーザーの <ホーム>/.ves ディレクトリにある暗号化キーを検索します。したがって、コンフィギュレーションが暗号化された後は、Experience Service は .ves ディレクトリから暗号化キーを取得できるはずです。