I have hesitated between providing some huge tl;dr exposé and something shorter. I'll do shorter here.

0. For now, I'm using "changeit" below as password rolling a self-signed certificate for key, key store and trust store. 1. I have a service running in Tomcat that I hit via HTTPs because the content always involves personal health information. 2. I use a key store containing my certificate. No trust store is needed or involved in Tomcat.
3. I need to hit my Tomcat service using /InvokeHTTP/ in my flow.
4. This means configuring an instance of /Standard[Restricted]SSLContextService/. 5. The SSL context service insists on a defined key store with key password and key store password. 6. The SSL context service insists on a defined trust store. The best I have been able to do is to roll the key store certificate into a trust store. 7. When either key- or trust store file is missing, the SSL context service complains that a resource is missing (for key store or trust store).
8. Once both files/resources exist, all three passwords appear crucial.
9. Despite password used to create key and certificates, it is always wrong according to SSL context service validator which consistently issues:

   /Keystore Properties is invalid because invalid keystore password or
   type specified for file __________.//
   //Truststore Properties is invalid because invalid truststore
   password or type specified for file __________./

It would be nice to see a step-by-step illustration of creating the key, key store and trust store artifacts required by SSL context service and perhaps the full configuration of the SSL context service.

Other notes:

1. I seem to get pretty far toward a solution using Java's keytool.
2. I don't get very far using openssl.
3. I get even less traction trying to use NiFi's TLS toolkit to solve this.
4. I guess I could simply write my own SSL context service that doesn't require a trust store?

Huge thanks for any help or comments.

Russ

P.S. I have a scratch sheet that reveals how I created artifacts and thought through the problem at:

https://www.javahotchocolate.com/notes/keytool-experience.html

Reply via email to