Class OpenSSLUtil
java.lang.Object
org.apache.tomcat.util.net.SSLUtilBase
org.apache.tomcat.util.net.openssl.OpenSSLUtil
- All Implemented Interfaces:
SSLUtil
OpenSSL implementation of SSL utility operations.
-
Nested Class Summary
Nested classes/interfaces inherited from interface SSLUtil
SSLUtil.ProtocolInfo -
Field Summary
Fields inherited from class SSLUtilBase
certificate, DEFAULT_KEY_ALIAS, sslHostConfig -
Constructor Summary
ConstructorsConstructorDescriptionOpenSSLUtil(SSLHostConfigCertificate certificate) Constructs an OpenSSLUtil for the given certificate. -
Method Summary
Modifier and TypeMethodDescriptionstatic X509KeyManagerchooseKeyManager(KeyManager[] managers) Deprecated.static X509KeyManagerchooseKeyManager(KeyManager[] managers, boolean throwOnMissing) Chooses an X509 key manager from the array of key managers.createSSLContextInternal(List<String> negotiableProtocols) Creates an SSL context with the given negotiable protocols.Returns the set of implemented SSL/TLS ciphers.Returns the set of implemented SSL/TLS protocols.Returns the key managers.protected LoggetLog()Returns the log for this utility.protected booleanReturns whether TLS 1.3 renegotiation authentication is available.Methods inherited from class SSLUtilBase
configureSessionContext, createSSLContext, getCRLs, getEnabledCiphers, getEnabledProtocols, getParameters, getTrustManagers
-
Constructor Details
-
OpenSSLUtil
Constructs an OpenSSLUtil for the given certificate.- Parameters:
certificate- The SSL host config certificate
-
-
Method Details
-
getLog
Description copied from class:SSLUtilBaseReturns the log for this utility.- Specified by:
getLogin classSSLUtilBase- Returns:
- the log
-
getImplementedProtocols
Description copied from class:SSLUtilBaseReturns the set of implemented SSL/TLS protocols.- Specified by:
getImplementedProtocolsin classSSLUtilBase- Returns:
- the implemented protocols
-
getImplementedCiphers
Description copied from class:SSLUtilBaseReturns the set of implemented SSL/TLS ciphers.- Specified by:
getImplementedCiphersin classSSLUtilBase- Returns:
- the implemented ciphers
-
isTls13RenegAuthAvailable
protected boolean isTls13RenegAuthAvailable()Description copied from class:SSLUtilBaseReturns whether TLS 1.3 renegotiation authentication is available.- Specified by:
isTls13RenegAuthAvailablein classSSLUtilBase- Returns:
trueif TLS 1.3 renegotiation authentication is available
-
createSSLContextInternal
Description copied from class:SSLUtilBaseCreates an SSL context with the given negotiable protocols.- Specified by:
createSSLContextInternalin classSSLUtilBase- Parameters:
negotiableProtocols- The negotiable protocols- Returns:
- the SSL context
- Throws:
Exception- if creation fails
-
chooseKeyManager
Deprecated.- Throws:
Exception
-
chooseKeyManager
public static X509KeyManager chooseKeyManager(KeyManager[] managers, boolean throwOnMissing) throws Exception Chooses an X509 key manager from the array of key managers.- Parameters:
managers- The key managers to choose fromthrowOnMissing- Whether to throw if no key manager is found- Returns:
- The chosen X509 key manager
- Throws:
Exception- if no suitable key manager is found and throwOnMissing is true
-
getKeyManagers
Description copied from interface:SSLUtilReturns the key managers.- Specified by:
getKeyManagersin interfaceSSLUtil- Overrides:
getKeyManagersin classSSLUtilBase- Returns:
- The key managers
- Throws:
Exception- if an error occurs
-