Se si decide di proteggere la connessione JDBC utilizzando il tipo di asserzione JWT, è necessario generare una chiave privata e un certificato per autenticare la connessione.
- Generare una coppia di chiavi e un keystore.
Da un prompt dei comandi, eseguire un comando keytool
utilizzando il formato di comando seguente:
keytool -genkeypair -v -keystore <keystore name> -storetype <store type i.e PKCS12> -storepass <store pass> -keyalg <key algorithm> -keysize <key size> -sigalg <sig algorithm> -validity <validity days> -alias <alias name> -keypass <key pass>
Ad esempio:
keytool -genkeypair -v -keystore bijdbckeystore.jks -storetype PKCS12 -storepass password -keyalg RSA -keysize 2048 -sigalg SHA256withRSA -validity 3600 -alias bijdbcclientalias -keypass password
- Generare un certificato pubblico.
Da un prompt dei comandi, eseguire un comando keytool
utilizzando il formato di comando seguente:
keytool -exportcert -v -alias <alias name> -keystore <keystore name> -storetype <store type, such as PKCS12> -storepass <store pass> -file <certificate file> -rfc
Ad esempio:
keytool -exportcert -v -alias bijdbcclientalias -keystore bijdbckeystore.jks -storetype PKCS12 -storepass password -file bijdbcclient.cert -rfc
- Usare OpenSS per estrarre la chiave privata, in formato PKCS8, dal file keystore.
Utilizzare il formato di comando seguente:
openssl pkcs12 -in <keystore file name> -passin pass:<keystore password> -nodes -nocerts -nomacver > <PKCS8 key file path>
Ad esempio:
openssl pkcs12 -in bijdbckeystore.jks -passin pass:password -nodes -nocerts -nomacver |sed -n '/BEGIN PRIVATE KEY/,$p' > bijdbcclient.pem
- Salvare la chiave generata e i certificati in un percorso accessibile al computer client.