Products | Versions |
---|---|
TIBCO Live Datamart | 10.6 and later |
What are the basic steps needed to configure SSL connections for LiveView clients?
> keytool -list -V -keystore mykeystore -storepass mypassword Keystore type: jks Keystore provider: SUN Your keystore contains 1 entry Alias name: myalias Creation date: Jun 16, 2016 Entry type: PrivateKeyEntry Certificate chain length: 1 Certificate[1]: Owner: CN=localhost, OU=liveview, O=myorganization, L=mylocality, ST=mystate, C=USHere, the CN is 'localhost'.
LDMEngine = { systemProperties = { "liveview.ssl.hostname" = "localhost" } }3.) A LiveView Client API Listener configuration. Here, we set the LV port number and the 'secureCommunicationProfileName', which forces clients to connect using a secure communication profile.
ClientAPIListener = { portNumber = 11080 secureCommunicationProfileName = "MyServerTLSProfile" }4.) A secure communications profile for the LV server, where details on the server's keystore are configured. If using 2-way SSL/TLS (where clients need to provide their own identity/certificate to the LV server), then this profile will also have details about the LV server's trust store (where trusted client issuer certificates are stored).
SecureCommunicationServerProfile = { name = "MyServerTLSProfile" keyStore = "C:/stores/mykeystore" // to hold server keys and certificates keyStorePassword = "mypassword" keyPassword = "mypassword" keyStoreType = "JKS" trustStore = "C:/stores/mytruststore" // to hold trusted client issuer (root CA) certificates (for 2-way SSL only) trustStorePassword = "mypassword" trustStoreType = "JKS" requireClientAuthentication = false }Note that the name in the SecureCommunicationServerProfile configuration, 'MyServerTLSProfile', needs to match the name specified in the ClientAPIListener configuration above.
SecureCommunicationClientProfile = { name = "MyClientTLSProfile" keyStore = "C:/stores/clientkeystore" // to hold client keys and certificates (for 2-way SSL only) keyStorePassword = "mypassword" keyPassword = "mypassword" keyStoreType = "JKS" trustStore = "C:/stores/clienttruststore" // to hold trusted LV server issuer (root CA) certificates trustStorePassword = "mypassword" trustStoreType = "JKS" requireClientAuthentication = false }6.) A LiveView Internal Credentials configuration. This is required to secure LV internal connections. This contains the property 'ldmSecureInternalCommunicationProfileName', which is set to the client TLS configuration name.
InternalCredentials = { ldmSecureInternalCommunicationProfileName = "MyClientTLSProfile" }Note that the name in the InternalCredentials configuration, 'MyClientTLSProfile', needs to match the name specified in the SecureCommunicationClientProfile above.