Crittografia delle password
Per ulteriori informazioni, fare riferimento all'argomento Strumento di gestione della protezione in questo Help Center.
Crittografia delle password di licenze e database
Il provider del keystore impiega un token sicuro memorizzato crittografato in un file per utilizzare il keystore. Tutti i dati scritti nel keystore vengono memorizzati in modo sicuro tramite la password. Quando il provider viene avviato per la prima volta, genera, se non esistono già, un valore casuale per la password e un file del keystore.
* 
La password e il file del keystore devono essere limitati solo all'utente dell'applicazione. L'utente dell'applicazione deve disporre dei permessi di lettura/scrittura per i file.
* 
Gli esempi riportati di seguito sono basati su Windows. Se si utilizza un sistema operativo basato su Linux, modificare i comandi in base alle esigenze.
Per creare un file del keystore e memorizzarvi i dati iniziali, è necessario utilizzare lo strumento di gestione della protezione.
1. Ottenere il file ZIP dello strumento di gestione della protezione dal sito del supporto tecnico PTC.
2. Estrarre il contenuto del file ZIP in una cartella.
3. Creare un file di configurazione con i parametri seguenti e posizionarlo nella cartella bin dei file decompressi. In questo esempio il file è denominato keystore.conf, la versione dello strumento è 1.0.3.48 e il file si trova in C://security-common-cli-1.0.3.48/bin.
* 
Il parametro default-encryption-key-length deve corrispondere alla configurazione dell'applicazione. In ThingWorx è il parametro InternalAesCryptographicKeyLength situato in platform-settings.json. Il valore di default è 128 ma, se si utilizza Java 1.8.0_162 o versioni successive, è possibile utilizzare la crittografia a 256 bit. Se necessario, è inoltre possibile usare le versioni precedenti di Java aggiornando i criteri di Java per il limite di dimensione della chiave.
{
security {
secret-provider = "com.thingworx.security.provider.keystore.KeyStoreProvider"
default-encryption-key-length = 128
keystore {
password-file-path = "/ThingworxPlatform"
password-file-name = "keystore-password"
path = "/ThingworxStorage"
name = "keystore"
}
}
}
4. Avviare un prompt dei comandi e andare al percorso security-common-cli-1.0.3.48\bin.
5. Eseguire quanto segue per creare un file di password e il keystore nel percorso configurato.
Password di licenza:
C:\security-common-cli-1.0.3.48\bin> security-common-cli.bat <path to keystore>\keystore.conf
set encrypt.licensing.password "add-password-here"
Password di database:
C:\security-common-cli-1.0.3.48\bin> security-common-cli.bat <path to keystore>\keystore.conf
set encrypt.db.password "add-password-here"
Password proxy di licenza:
C:\security-common-cli-1.0.3.48\bin> security-common-cli.bat <path to keystore>\keystore.conf
set encrypt.proxy.password "add-password-here"
Password di RabbitMQ (se è stato installato ThingWorx Flow):
C:\security-common-cli-1.0.3.48\bin> security-common-cli.bat <path to keystore>\keystore.conf
set encrypt.queue.password "add-password-here"
6. Aprire ThingworxPlatform\platform-settings.json ed eseguire gli aggiornamenti seguenti.
Password di licenza: in LicensingConnectionSettings impostare il valore della password su encrypt.licensing.password, ad esempio "password": "encrypt.licensing.password".
Password di database: in PersistenceProviderPackageConfigs ConnectionInformation per il provider di persistenza in uso impostare il valore della password su encrypt.db.password, ad esempio "password": "encrypt.db.password".
Password proxy di licenza: in LicensingConnectionSettings impostare il valore della password su encrypt.proxy.password, ad esempio "proxyPassword": "encrypt.proxy.password".
Password di RabbitMQ (se è stato installato ThingWorx Flow): nel file platform-settings.json, in OrchestrationSettings, modificare il valore di QueuePassword in encrypt.queue.password. ad esempio "QueuePassword": "encrypt.queue.password".
Questa password indica a ThingWorx Platform di cercare la password di licenza crittografata nel keystore quando viene rilevato.
È stato utile?