edu.northwestern.at.utils.net.ssl
Class AcceptAnyCertTrustManager

java.lang.Object
  extended by edu.northwestern.at.utils.net.ssl.AcceptAnyCertTrustManager
All Implemented Interfaces:
javax.net.ssl.TrustManager, javax.net.ssl.X509TrustManager

public class AcceptAnyCertTrustManager
extends java.lang.Object
implements javax.net.ssl.X509TrustManager

Implements a relaxed trust manager which accepts any SSL certificate.


Constructor Summary
AcceptAnyCertTrustManager()
          Create relaxed trust manager.
 
Method Summary
 void checkClientTrusted(java.security.cert.X509Certificate[] chain, java.lang.String authType)
          Check if a client certificate is trusted.
 void checkServerTrusted(java.security.cert.X509Certificate[] chain, java.lang.String authType)
          Check if a server certificate is trusted.
 java.security.cert.X509Certificate[] getAcceptedIssuers()
          Return valid certificate issuers.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AcceptAnyCertTrustManager

public AcceptAnyCertTrustManager()
Create relaxed trust manager.

Method Detail

checkClientTrusted

public void checkClientTrusted(java.security.cert.X509Certificate[] chain,
                               java.lang.String authType)
                        throws java.security.cert.CertificateException
Check if a client certificate is trusted.

Specified by:
checkClientTrusted in interface javax.net.ssl.X509TrustManager
Parameters:
chain - Peer certificate chain.
authType - Authentication type based upon the client certificate.
Throws:
java.lang.IllegalArgumentException - Not thrown here since we accept anything.
java.security.cert.CertificateException - Not thrown here since we accept anything.

checkServerTrusted

public void checkServerTrusted(java.security.cert.X509Certificate[] chain,
                               java.lang.String authType)
                        throws java.security.cert.CertificateException
Check if a server certificate is trusted.

Specified by:
checkServerTrusted in interface javax.net.ssl.X509TrustManager
Parameters:
chain - Peer certificate chain.
authType - Authentication type based upon the client certificate.
Throws:
java.security.cert.CertificateException - No thrown here since we accept anything.

Since we accept any certificate, we just return without checking the validity of the certificate in any way.


getAcceptedIssuers

public java.security.cert.X509Certificate[] getAcceptedIssuers()
Return valid certificate issuers.

Specified by:
getAcceptedIssuers in interface javax.net.ssl.X509TrustManager
Returns:
An X509 certificate to be accepted. Since we accept anything, a default certificate is sufficient.