Top Description Inners Methods
org.apache.tomcat.util.net

public Interface SSLUtil

Known Direct Implementers
org.apache.tomcat.util.net.SSLUtilBase
Imports
java.util.List, javax.net.ssl.KeyManager, .SSLSessionContext, .TrustManager

Provides a common interface for SSLImplementations to create the necessary JSSE implementation objects for TLS connections created via the JSSE API.

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static interface
SSLUtil.ProtocolInfo

Optional interface that can be implemented by javax.net.ssl.SSLEngines to indicate that they support ALPN and can provided the protocol agreed with the client.

Method Summary

Modifier and TypeMethod and Description
public void
public SSLContext
createSSLContext(List<String> negotiableProtocols)

public String[]

Returns:

The ciphers currently enabled and available for clients to select from for the associated connection
getEnabledCiphers
()

The set of enabled ciphers is the intersection of the implemented ciphers and the configured ciphers.

public String[]

Returns:

The protocols currently enabled and available for clients to select from for the associated connection
getEnabledProtocols
()

The set of enabled protocols is the intersection of the implemented protocols and the configured protocols.

public KeyManager[]
public TrustManager[]

Method Detail

configureSessionContextback to summary
public void configureSessionContext(SSLSessionContext sslSessionContext)
createSSLContextback to summary
public SSLContext createSSLContext(List<String> negotiableProtocols) throws Exception
getEnabledCiphersback to summary
public String[] getEnabledCiphers() throws IllegalArgumentException

The set of enabled ciphers is the intersection of the implemented ciphers and the configured ciphers. If no ciphers are explicitly configured, then the default ciphers will be included in the returned array.

The ciphers used during the TLS handshake may be further restricted by the getEnabledProtocols() and the certificates.

Returns:String[]

The ciphers currently enabled and available for clients to select from for the associated connection

Exceptions
IllegalArgumentException:
If there is no intersection between the implemented and configured ciphers
getEnabledProtocolsback to summary
public String[] getEnabledProtocols() throws IllegalArgumentException

The set of enabled protocols is the intersection of the implemented protocols and the configured protocols. If no protocols are explicitly configured, then all of the implemented protocols will be included in the returned array.

Returns:String[]

The protocols currently enabled and available for clients to select from for the associated connection

Exceptions
IllegalArgumentException:
If there is no intersection between the implemented and configured protocols
getKeyManagersback to summary
public KeyManager[] getKeyManagers() throws Exception
getTrustManagersback to summary
public TrustManager[] getTrustManagers() throws Exception
org.apache.tomcat.util.net back to summary

public Interface SSLUtil.ProtocolInfo

Known Direct Implementers
org.apache.tomcat.util.net.openssl.OpenSSLEngine

Optional interface that can be implemented by javax.net.ssl.SSLEngines to indicate that they support ALPN and can provided the protocol agreed with the client.

Method Summary

Modifier and TypeMethod and Description
public String

Returns:

the protocol selected using ALPN
getNegotiatedProtocol
()

ALPN information.

Method Detail

getNegotiatedProtocolback to summary
public String getNegotiatedProtocol()

ALPN information.

Returns:String

the protocol selected using ALPN