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를 시작할 필요가 없습니다.
구성을 암호화할 때, Experience Service는 암호화에 사용되는 키를 생성하고 AES 256 알고리즘을 사용하여 중요 정보의 암호를 해독합니다. 이 키는 --encryptConfiguration 옵션을 사용하여 Experience Service를 시작한 사용자의 홈 디렉터리에 있는 .ves 디렉터리에 저장됩니다. 권한이 없는 사용자가 중요 정보의 암호를 해독하지 못하도록 이 키를 보호해야 합니다.
구성이 암호화된 후 Experience Service를 다시 시작할 때, Experience Service는 Experience Service를 시작하려는 사용자의 <home>/.ves 디렉터리에서 이 암호화 키를 찾습니다. 따라서, 구성이 암호화되면 Experience Service가 이 .ves 디렉터리에서 암호화 키를 검색할 수 있어야 합니다.