Package org.ldaptive.ssl
Class X509ExtendedTrustManagerWrapper
java.lang.Object
javax.net.ssl.X509ExtendedTrustManager
org.ldaptive.ssl.X509ExtendedTrustManagerWrapper
- All Implemented Interfaces:
TrustManager,X509TrustManager
Wraps an
X509TrustManager in order to provide hostname verification.-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final CertificateHostnameVerifierHostname verifier.protected final LoggerLogger for this class.private final X509TrustManagerTrust manager. -
Constructor Summary
ConstructorsConstructorDescriptionX509ExtendedTrustManagerWrapper(X509TrustManager manager, CertificateHostnameVerifier verifier) Creates a new X509 extended trust manager wrapper. -
Method Summary
Modifier and TypeMethodDescriptionvoidcheckClientTrusted(X509Certificate[] chain, String authType) voidcheckClientTrusted(X509Certificate[] chain, String authType, Socket socket) voidcheckClientTrusted(X509Certificate[] chain, String authType, SSLEngine engine) voidcheckServerTrusted(X509Certificate[] chain, String authType) voidcheckServerTrusted(X509Certificate[] chain, String authType, Socket socket) voidcheckServerTrusted(X509Certificate[] chain, String authType, SSLEngine engine) protected voidverifyHostname(SSLSession session, X509Certificate cert) Resolves a hostname from the supplied session and invokeshostnameVerifier.
-
Field Details
-
logger
Logger for this class. -
trustManager
Trust manager. -
hostnameVerifier
Hostname verifier.
-
-
Constructor Details
-
X509ExtendedTrustManagerWrapper
public X509ExtendedTrustManagerWrapper(X509TrustManager manager, CertificateHostnameVerifier verifier) Creates a new X509 extended trust manager wrapper.- Parameters:
manager- to wrapverifier- to verify hostname
-
-
Method Details
-
verifyHostname
Resolves a hostname from the supplied session and invokeshostnameVerifier.- Parameters:
session- to extract hostname fromcert- to verify hostname against- Throws:
CertificateException- if the hostname cannot be verified
-
checkClientTrusted
public void checkClientTrusted(X509Certificate[] chain, String authType, Socket socket) throws CertificateException - Specified by:
checkClientTrustedin classX509ExtendedTrustManager- Throws:
CertificateException
-
checkServerTrusted
public void checkServerTrusted(X509Certificate[] chain, String authType, Socket socket) throws CertificateException - Specified by:
checkServerTrustedin classX509ExtendedTrustManager- Throws:
CertificateException
-
checkClientTrusted
public void checkClientTrusted(X509Certificate[] chain, String authType, SSLEngine engine) throws CertificateException - Specified by:
checkClientTrustedin classX509ExtendedTrustManager- Throws:
CertificateException
-
checkServerTrusted
public void checkServerTrusted(X509Certificate[] chain, String authType, SSLEngine engine) throws CertificateException - Specified by:
checkServerTrustedin classX509ExtendedTrustManager- Throws:
CertificateException
-
checkClientTrusted
public void checkClientTrusted(X509Certificate[] chain, String authType) throws CertificateException - Throws:
CertificateException
-
checkServerTrusted
public void checkServerTrusted(X509Certificate[] chain, String authType) throws CertificateException - Throws:
CertificateException
-
getAcceptedIssuers
-