Top Fields Constructors Methods
io.netty.handler.ssl.util

pack-priv final Class X509TrustManagerWrapper

extends X509ExtendedTrustManager
Class Inheritance
Annotations
@SuppressJava6Requirement
reason:Usage guarded by java version check
Imports
io.netty.util.internal.SuppressJava6Requirement, javax.net.ssl.SSLEngine, .X509ExtendedTrustManager, .X509TrustManager, java.net.Socket, java.security.cert.CertificateException, .X509Certificate

Field Summary

Modifier and TypeField and Description
private final X509TrustManager

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
public void
checkClientTrusted(X509Certificate[]
the peer certificate chain
chain
,
String
the authentication type based on the client certificate
s
)

Implements javax.net.ssl.X509TrustManager.checkClientTrusted.

Given the partial or complete certificate chain provided by the peer, build a certificate path to a trusted root and return if it can be validated and is trusted for client SSL authentication based on the authentication type.
public void
checkClientTrusted(X509Certificate[]
the peer certificate chain
chain
,
String
the key exchange algorithm used
s
,
Socket
the socket used for this connection. This parameter can be null, which indicates that implementations need not check the ssl parameters
socket
)

Implements abstract javax.net.ssl.X509ExtendedTrustManager.checkClientTrusted.

Given the partial or complete certificate chain provided by the peer, build and validate the certificate path based on the authentication type and ssl parameters.
public void
checkClientTrusted(X509Certificate[]
the peer certificate chain
chain
,
String
the key exchange algorithm used
s
,
SSLEngine
the engine used for this connection. This parameter can be null, which indicates that implementations need not check the ssl parameters
sslEngine
)

Implements abstract javax.net.ssl.X509ExtendedTrustManager.checkClientTrusted.

Given the partial or complete certificate chain provided by the peer, build and validate the certificate path based on the authentication type and ssl parameters.
public void
checkServerTrusted(X509Certificate[]
the peer certificate chain
chain
,
String
the key exchange algorithm used
s
)

Implements javax.net.ssl.X509TrustManager.checkServerTrusted.

Given the partial or complete certificate chain provided by the peer, build a certificate path to a trusted root and return if it can be validated and is trusted for server SSL authentication based on the authentication type.
public void
checkServerTrusted(X509Certificate[]
the peer certificate chain
chain
,
String
the key exchange algorithm used
s
,
Socket
the socket used for this connection. This parameter can be null, which indicates that implementations need not check the ssl parameters
socket
)

Implements abstract javax.net.ssl.X509ExtendedTrustManager.checkServerTrusted.

Given the partial or complete certificate chain provided by the peer, build and validate the certificate path based on the authentication type and ssl parameters.
public void
checkServerTrusted(X509Certificate[]
the peer certificate chain
chain
,
String
the key exchange algorithm used
s
,
SSLEngine
the engine used for this connection. This parameter can be null, which indicates that implementations need not check the ssl parameters
sslEngine
)

Implements abstract javax.net.ssl.X509ExtendedTrustManager.checkServerTrusted.

Given the partial or complete certificate chain provided by the peer, build and validate the certificate path based on the authentication type and ssl parameters.
public X509Certificate[]
getAcceptedIssuers()

Implements javax.net.ssl.X509TrustManager.getAcceptedIssuers.

Return an array of certificate authority certificates which are trusted for authenticating peers.

Field Detail

delegateback to summary
private final X509TrustManager delegate

Constructor Detail

X509TrustManagerWrapperback to summary
pack-priv X509TrustManagerWrapper(X509TrustManager delegate)

Method Detail

checkClientTrustedback to summary
public void checkClientTrusted(X509Certificate[] chain, String s) throws CertificateException

Implements javax.net.ssl.X509TrustManager.checkClientTrusted.

Doc from javax.net.ssl.X509TrustManager.checkClientTrusted.

Given the partial or complete certificate chain provided by the peer, build a certificate path to a trusted root and return if it can be validated and is trusted for client SSL authentication based on the authentication type.

The authentication type is determined by the actual certificate used. For instance, if RSAPublicKey is used, the authType should be "RSA". Checking is case-sensitive.

Parameters
chain:X509Certificate[]

the peer certificate chain

s:String

the authentication type based on the client certificate

Annotations
@Override
Exceptions
CertificateException:
if the certificate chain is not trusted by this TrustManager.
checkClientTrustedback to summary
public void checkClientTrusted(X509Certificate[] chain, String s, Socket socket) throws CertificateException

Implements abstract javax.net.ssl.X509ExtendedTrustManager.checkClientTrusted.

Doc from javax.net.ssl.X509ExtendedTrustManager.checkClientTrusted.

Given the partial or complete certificate chain provided by the peer, build and validate the certificate path based on the authentication type and ssl parameters.

The authentication type is determined by the actual certificate used. For instance, if RSAPublicKey is used, the authType should be "RSA". Checking is case-sensitive.

If the socket parameter is an instance of javax.net.ssl.SSLSocket, and the endpoint identification algorithm of the SSLParameters is non-empty, to prevent man-in-the-middle attacks, the address that the socket connected to should be checked against the peer's identity presented in the end-entity X509 certificate, as specified in the endpoint identification algorithm.

If the socket parameter is an instance of javax.net.ssl.SSLSocket, and the algorithm constraints of the SSLParameters is non-null, for every certificate in the certification path, fields such as subject public key, the signature algorithm, key usage, extended key usage, etc. need to conform to the algorithm constraints in place on this socket.

Parameters
chain:X509Certificate[]

the peer certificate chain

s:String

the key exchange algorithm used

socket:Socket

the socket used for this connection. This parameter can be null, which indicates that implementations need not check the ssl parameters

Annotations
@Override
Exceptions
CertificateException:
if the certificate chain is not trusted by this TrustManager
checkClientTrustedback to summary
public void checkClientTrusted(X509Certificate[] chain, String s, SSLEngine sslEngine) throws CertificateException

Implements abstract javax.net.ssl.X509ExtendedTrustManager.checkClientTrusted.

Doc from javax.net.ssl.X509ExtendedTrustManager.checkClientTrusted.

Given the partial or complete certificate chain provided by the peer, build and validate the certificate path based on the authentication type and ssl parameters.

The authentication type is determined by the actual certificate used. For instance, if RSAPublicKey is used, the authType should be "RSA". Checking is case-sensitive.

If the engine parameter is available, and the endpoint identification algorithm of the SSLParameters is non-empty, to prevent man-in-the-middle attacks, the address that the engine connected to should be checked against the peer's identity presented in the end-entity X509 certificate, as specified in the endpoint identification algorithm.

If the engine parameter is available, and the algorithm constraints of the SSLParameters is non-null, for every certificate in the certification path, fields such as subject public key, the signature algorithm, key usage, extended key usage, etc. need to conform to the algorithm constraints in place on this engine.

Parameters
chain:X509Certificate[]

the peer certificate chain

s:String

the key exchange algorithm used

sslEngine:SSLEngine

the engine used for this connection. This parameter can be null, which indicates that implementations need not check the ssl parameters

Annotations
@Override
Exceptions
CertificateException:
if the certificate chain is not trusted by this TrustManager
checkServerTrustedback to summary
public void checkServerTrusted(X509Certificate[] chain, String s) throws CertificateException

Implements javax.net.ssl.X509TrustManager.checkServerTrusted.

Doc from javax.net.ssl.X509TrustManager.checkServerTrusted.

Given the partial or complete certificate chain provided by the peer, build a certificate path to a trusted root and return if it can be validated and is trusted for server SSL authentication based on the authentication type.

The authentication type is the key exchange algorithm portion of the cipher suites represented as a String, such as "RSA", "DHE_DSS".

Note

for some exportable cipher suites, the key exchange algorithm is determined at run time during the handshake. For instance, for TLS_RSA_EXPORT_WITH_RC4_40_MD5, the authType should be RSA_EXPORT when an ephemeral RSA key is used for the key exchange, and RSA when the key from the server certificate is used. Checking is case-sensitive.

Parameters
chain:X509Certificate[]

the peer certificate chain

s:String

the key exchange algorithm used

Annotations
@Override
Exceptions
CertificateException:
if the certificate chain is not trusted by this TrustManager.
checkServerTrustedback to summary
public void checkServerTrusted(X509Certificate[] chain, String s, Socket socket) throws CertificateException

Implements abstract javax.net.ssl.X509ExtendedTrustManager.checkServerTrusted.

Doc from javax.net.ssl.X509ExtendedTrustManager.checkServerTrusted.

Given the partial or complete certificate chain provided by the peer, build and validate the certificate path based on the authentication type and ssl parameters.

The authentication type is the key exchange algorithm portion of the cipher suites represented as a String, such as "RSA", "DHE_DSS".

Note

for some exportable cipher suites, the key exchange algorithm is determined at run time during the handshake. For instance, for TLS_RSA_EXPORT_WITH_RC4_40_MD5, the authType should be RSA_EXPORT when an ephemeral RSA key is used for the key exchange, and RSA when the key from the server certificate is used. Checking is case-sensitive.

If the socket parameter is an instance of javax.net.ssl.SSLSocket, and the endpoint identification algorithm of the SSLParameters is non-empty, to prevent man-in-the-middle attacks, the address that the socket connected to should be checked against the peer's identity presented in the end-entity X509 certificate, as specified in the endpoint identification algorithm.

If the socket parameter is an instance of javax.net.ssl.SSLSocket, and the algorithm constraints of the SSLParameters is non-null, for every certificate in the certification path, fields such as subject public key, the signature algorithm, key usage, extended key usage, etc. need to conform to the algorithm constraints in place on this socket.

Parameters
chain:X509Certificate[]

the peer certificate chain

s:String

the key exchange algorithm used

socket:Socket

the socket used for this connection. This parameter can be null, which indicates that implementations need not check the ssl parameters

Annotations
@Override
Exceptions
CertificateException:
if the certificate chain is not trusted by this TrustManager
checkServerTrustedback to summary
public void checkServerTrusted(X509Certificate[] chain, String s, SSLEngine sslEngine) throws CertificateException

Implements abstract javax.net.ssl.X509ExtendedTrustManager.checkServerTrusted.

Doc from javax.net.ssl.X509ExtendedTrustManager.checkServerTrusted.

Given the partial or complete certificate chain provided by the peer, build and validate the certificate path based on the authentication type and ssl parameters.

The authentication type is the key exchange algorithm portion of the cipher suites represented as a String, such as "RSA", "DHE_DSS".

Note

for some exportable cipher suites, the key exchange algorithm is determined at run time during the handshake. For instance, for TLS_RSA_EXPORT_WITH_RC4_40_MD5, the authType should be RSA_EXPORT when an ephemeral RSA key is used for the key exchange, and RSA when the key from the server certificate is used. Checking is case-sensitive.

If the engine parameter is available, and the endpoint identification algorithm of the SSLParameters is non-empty, to prevent man-in-the-middle attacks, the address that the engine connected to should be checked against the peer's identity presented in the end-entity X509 certificate, as specified in the endpoint identification algorithm.

If the engine parameter is available, and the algorithm constraints of the SSLParameters is non-null, for every certificate in the certification path, fields such as subject public key, the signature algorithm, key usage, extended key usage, etc. need to conform to the algorithm constraints in place on this engine.

Parameters
chain:X509Certificate[]

the peer certificate chain

s:String

the key exchange algorithm used

sslEngine:SSLEngine

the engine used for this connection. This parameter can be null, which indicates that implementations need not check the ssl parameters

Annotations
@Override
Exceptions
CertificateException:
if the certificate chain is not trusted by this TrustManager
getAcceptedIssuersback to summary
public X509Certificate[] getAcceptedIssuers()

Implements javax.net.ssl.X509TrustManager.getAcceptedIssuers.

Doc from javax.net.ssl.X509TrustManager.getAcceptedIssuers.

Return an array of certificate authority certificates which are trusted for authenticating peers.

Returns:X509Certificate[]

a non-null (possibly empty) array of acceptable CA issuer certificates.

Annotations
@Override