SSL Repertoire (ssl)

An SSL repertoire with an ID, a defined keystore, and an optional truststore.

NameTypeDefaultDescription

clientAuthentication

boolean

false

Specifies whether client authentication is enabled. If set to true then client authentication is required and the client must provide a certificate for the server trusts.

clientAuthenticationSupported

boolean

false

Specifies whether a client authentication is supported. If set to true then the client authentication support means the server will check trust from a client if the client presents a certificate.

clientKeyAlias

string

Specifies the alias of the certificate in the keystore that is used as the key to send to a server that has client authentication enabled. This attribute is only needed if the keystore has more than one key entry.

enabledCiphers

string

Specifies a custom list of ciphers. Separate each cipher in the list with a space. The supported cipher will depend on the underlying JRE used. Please check the JRE for valid ciphers.

enforceCipherOrder

boolean

false

Specify on the server socket whether to enforce the cipher order. If set to true, the server socket is enabled to enforce the cipher order. The attribute is set to false by default.

id

string

A unique configuration ID.

keyStoreRef

A reference to top level keyStore element (string).

A keystore containing key entries for the SSL repertoire. This attribute is required.

securityLevel

  • CUSTOM

  • HIGH

  • LOW

  • MEDIUM

HIGH

Specifies the cipher suite group used by the SSL handshake. HIGH are 3DES and 128 bit and higher ciphers, MEDIUM are DES and 40 bit ciphers, LOW are ciphers without encryption. If the enabledCiphers attribute is used the securityLevel list is ignored.
CUSTOM
Custom list of cipher suites
HIGH
Cipher suites 3DES and 128 bit and higher
LOW
Cipher suites without encryption
MEDIUM
Cipher suites DES and 40 bit

serverKeyAlias

string

Specifies the alias of the certificate in the keystore used as the server's key. This attribute is only needed if the keystore has more then one key entry.

skipHostnameVerificationForHosts

string

Specifies the hostname that allow to skip the host name verification for outbound connection using a specific SSL configuration.

sslProtocol

string

The SSL handshake protocol. The protocol can be set to a single value found in the documentation for the underlying JRE's Java Secure Socket Extension (JSSE) provider. When using the IBM JRE the default value is SSL_TLSv2 and when using the Oracle JRE the default value is SSL. The protocol can also be a comma-separated list of any of the following values: TLSv1, TLSv1.1, TLSv1.2, or TLSv1.3.

trustDefaultCerts

boolean

false

Specifies whether the trust manager can establish trust by using the default certificates. If set to true, then the default certificates are used in addition to the configured truststore file to establish trust. The attribute is set to false by default.

trustStoreRef

A reference to top level keyStore element (string).

A keystore containing trusted certificate entries used by the SSL repertoire for signing verification. This attribute is optional. If unspecified, the same keystore is used for both key and trusted certificate entries.

verifyHostname

boolean

true

Specifies whether host name verification for outbound connections using a specific SSL configuration is enabled. If set to true, then all outbound SSL connections that use the specified SSL configuration undergo verification of the target server host name against that server's certificate. The attribute is set to false by default.

keyStore

A keystore containing key entries for the SSL repertoire. This attribute is required.

NameTypeDefaultDescription

fileBased

boolean

true

Specify true if the keystore is file based and false if the keystore is a SAF keyring or hardware keystore type.

id

string

defaultKeyStore

A unique configuration ID.

location

A file, directory or url.

${server.output.dir}/resources/security/key.p12

An absolute or relative path to the keystore file. If a relative path is provided, the server will attempt to locate the file in the ${server.output.dir}/resources/security directory. Use the keystore file for a file-based keystore, the keyring name for SAF keyrings, or the device configuration file for hardware cryptography devices. In the SSL minimal configuration, the location of the file is assumed to be ${server.output.dir}/resources/security/key.p12.

password

Reversably encoded password (string)

The password used to load the keystore file. The value can be stored in clear text or encoded form. Use the securityUtility tool to encode the password.

pollingRate

A period of time with millisecond precision

500ms

Rate at which the server checks for updates to a keystore file. Specify a positive integer followed by a unit of time, which can be hours (h), minutes (m), seconds (s), or milliseconds (ms). For example, specify 500 milliseconds as 500ms. You can include multiple values in a single entry. For example, 1s500ms is equivalent to 1.5 seconds.

readOnly

boolean

false

Specify true if the keystore is to be used by the server for reading and false if write operations will be performed by the server on the keystore.

type

string

PKCS12

A keystore type supported by the target SDK.

updateTrigger

  • disabled

  • mbean

  • polled

mbean

Keystore file update method or trigger.
disabled
Disables all update monitoring. Changes to the keystore file will not be applied while the server is running.
mbean
Server will only update the keystore when prompted by the FileNotificationMbean. The FileNotificationMbean is typically called by an external program such as an integrated development environment or a management application.
polled
Server will scan for keystore file changes at the polling interval and update if the keystore file has detectable changes. Polled does not apply to non file-based keystores such as SAF keyrings.

keyStore > keyEntry

A unique configuration ID.

NameTypeDefaultDescription

id

string

A unique configuration ID.

keyPassword

Reversably encoded password (string)
Required

Password of the private key entry in the keystore.

name

string
Required

Name of the private key entry in the keystore.

outboundConnection

A unique configuration ID.

NameTypeDefaultDescription

clientCertificate

string

The client uses this certificate alias if you make a connection to a server that supports or requires client authentication.

host

string
Required

The server uses this SSL configuration when it accesses the specified host name.

id

string

A unique configuration ID.

port

int

The server uses this SSL configuration when it accesses the remote host name at the specified port.

trustStore

A keystore containing trusted certificate entries used by the SSL repertoire for signing verification. This attribute is optional. If unspecified, the same keystore is used for both key and trusted certificate entries.

NameTypeDefaultDescription

fileBased

boolean

true

Specify true if the keystore is file based and false if the keystore is a SAF keyring or hardware keystore type.

id

string

defaultKeyStore

A unique configuration ID.

location

A file, directory or url.

${server.output.dir}/resources/security/key.p12

An absolute or relative path to the keystore file. If a relative path is provided, the server will attempt to locate the file in the ${server.output.dir}/resources/security directory. Use the keystore file for a file-based keystore, the keyring name for SAF keyrings, or the device configuration file for hardware cryptography devices. In the SSL minimal configuration, the location of the file is assumed to be ${server.output.dir}/resources/security/key.p12.

password

Reversably encoded password (string)

The password used to load the keystore file. The value can be stored in clear text or encoded form. Use the securityUtility tool to encode the password.

pollingRate

A period of time with millisecond precision

500ms

Rate at which the server checks for updates to a keystore file. Specify a positive integer followed by a unit of time, which can be hours (h), minutes (m), seconds (s), or milliseconds (ms). For example, specify 500 milliseconds as 500ms. You can include multiple values in a single entry. For example, 1s500ms is equivalent to 1.5 seconds.

readOnly

boolean

false

Specify true if the keystore is to be used by the server for reading and false if write operations will be performed by the server on the keystore.

type

string

PKCS12

A keystore type supported by the target SDK.

updateTrigger

  • disabled

  • mbean

  • polled

mbean

Keystore file update method or trigger.
disabled
Disables all update monitoring. Changes to the keystore file will not be applied while the server is running.
mbean
Server will only update the keystore when prompted by the FileNotificationMbean. The FileNotificationMbean is typically called by an external program such as an integrated development environment or a management application.
polled
Server will scan for keystore file changes at the polling interval and update if the keystore file has detectable changes. Polled does not apply to non file-based keystores such as SAF keyrings.

trustStore > keyEntry

A unique configuration ID.

NameTypeDefaultDescription

id

string

A unique configuration ID.

keyPassword

Reversably encoded password (string)
Required

Password of the private key entry in the keystore.

name

string
Required

Name of the private key entry in the keystore.