LDAPJDK 4.1

netscape.ldap
Class LDAPSSLSocketFactory

java.lang.Object
  |
  +--netscape.ldap.LDAPSSLSocketFactory

public class LDAPSSLSocketFactory
extends java.lang.Object
implements LDAPSSLSocketFactoryExt, java.io.Serializable

Creates an SSL socket connection to an LDAP Server. This class implements the LDAPSSLSocketFactoryExt interface.

To construct an object of this class, you need to specify the name of a class that implements the javax.net.ssl.SSLSocket interface. If you do not specify a class name, the class netscape.net.SSLSocket is used by default. This class is included with Netscape Communicator 4.05 and up.

If you are using a Java VM that provides certificate database management (such as Netscape Communicator), you can authenticate your client to a secure LDAP server by using certificates.

See Also:
LDAPSSLSocketFactoryExt, LDAPConnection.LDAPConnection(netscape.ldap.LDAPSocketFactory), Serialized Form

Constructor Summary
LDAPSSLSocketFactory()
          Constructs an LDAPSSLSocketFactory object using the default SSL socket implementation, netscape.net.SSLSocket.
LDAPSSLSocketFactory(boolean clientAuth)
          Constructs an LDAPSSLSocketFactory object using the default SSL socket implementation, netscape.net.SSLSocket.
LDAPSSLSocketFactory(java.lang.String className)
          Constructs an LDAPSSLSocketFactory object using the specified class.
LDAPSSLSocketFactory(java.lang.String className, boolean clientAuth)
          Constructs an LDAPSSLSocketFactory object using the specified class.
LDAPSSLSocketFactory(java.lang.String className, java.lang.Object cipherSuites)
          The constructor with the specified package for security and the specified cipher suites.
LDAPSSLSocketFactory(java.lang.String className, java.lang.Object cipherSuites, boolean clientAuth)
          The constructor with the specified package for security and the specified cipher suites.
 
Method Summary
 void enableClientAuth()
          Enables certificate-based client authentication for an application.
 void enableClientAuth(java.lang.String certdb, java.lang.String keydb, java.lang.String keypwd, java.lang.String certnickname, java.lang.String keynickname)
          This method is currently not implemented. Enables client authentication for an application that uses an external (file-based) certificate database.
 java.lang.Object getCipherSuites()
          Returns the suite of ciphers used for SSL connections made through sockets created by this factory.
 java.lang.String getSSLSocketImpl()
          Returns the name of the class that implements SSL sockets for this factory.
 boolean isClientAuth()
          Returns true if client authentication is enabled.
 java.net.Socket makeSocket(java.lang.String host, int port)
          Returns a socket to the LDAP server with the specified host name and port number.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LDAPSSLSocketFactory

public LDAPSSLSocketFactory()
Constructs an LDAPSSLSocketFactory object using the default SSL socket implementation, netscape.net.SSLSocket. (This class is provided with Netscape Communicator 4.05 and higher.)

LDAPSSLSocketFactory

public LDAPSSLSocketFactory(boolean clientAuth)
Constructs an LDAPSSLSocketFactory object using the default SSL socket implementation, netscape.net.SSLSocket. (This class is provided with Netscape Communicator 4.05 and up.)
Parameters:
clientAuth - true if certificate-based client authentication is desired. By default, client authentication is not used.

LDAPSSLSocketFactory

public LDAPSSLSocketFactory(java.lang.String className)
Constructs an LDAPSSLSocketFactory object using the specified class. The class must implement the interface javax.net.ssl.SSLSocket.
Parameters:
className - the name of a class implementing the javax.net.ssl.SSLSocket interface. Pass null for this parameter to use the default SSL socket implementation, netscape.net.SSLSocket, which is included with Netscape Communicator 4.05 and higher.

LDAPSSLSocketFactory

public LDAPSSLSocketFactory(java.lang.String className,
                            boolean clientAuth)
Constructs an LDAPSSLSocketFactory object using the specified class. The class must implement the interface javax.net.ssl.SSLSocket.
Parameters:
className - the name of a class implementing the javax.net.ssl.SSLSocket interface. Pass null for this parameter to use the default SSL socket implementation, netscape.net.SSLSocket, which is included with Netscape Communicator 4.05 and higher.
clientAuth - true if certificate-based client authentication is desired. By default, client authentication is not used.

LDAPSSLSocketFactory

public LDAPSSLSocketFactory(java.lang.String className,
                            java.lang.Object cipherSuites)
The constructor with the specified package for security and the specified cipher suites.
Parameters:
className - the name of a class implementing the interface javax.net.ssl.SSLSocket. Pass null for this parameter to use the default SSL socket implementation, netscape.net.SSLSocket, which is included with Netscape Communicator 4.05 and higher.
cipherSuites - the cipher suites to use for SSL connections

LDAPSSLSocketFactory

public LDAPSSLSocketFactory(java.lang.String className,
                            java.lang.Object cipherSuites,
                            boolean clientAuth)
The constructor with the specified package for security and the specified cipher suites.
Parameters:
className - the name of a class implementing the interface javax.net.ssl.SSLSocket. Pass null for this parameter to use the default SSL socket implementation, netscape.net.SSLSocket, which is included with Netscape Communicator 4.05 and higher.
cipherSuites - the cipher suites to use for SSL connections
clientAuth - true if certificate-based client authentication is desired. By default, client authentication is not used.
Method Detail

enableClientAuth

public void enableClientAuth()
Enables certificate-based client authentication for an application. The application must be running in a Java VM that provides transparent certificate database management (for example, Netscape Communicator's Java VM). Call this method before you call makeSocket.
See Also:
isClientAuth(), Note: enableClientAuth() is deprecated. This method is replaced by any one of the following constructors:

LDAPSSLSocketFactory(boolean) LDAPSSLSocketFactory(java.lang.String, boolean) LDAPSSLSocketFactory(java.lang.String, java.lang.Object, boolean)


enableClientAuth

public void enableClientAuth(java.lang.String certdb,
                             java.lang.String keydb,
                             java.lang.String keypwd,
                             java.lang.String certnickname,
                             java.lang.String keynickname)
                      throws LDAPException
This method is currently not implemented. Enables client authentication for an application that uses an external (file-based) certificate database. Call this method before you call makeSocket.
Parameters:
certdb - the pathname for the certificate database
keydb - the pathname for the private key database
keypwd - the password for the private key database
certnickname - the alias for the certificate
keynickname - the alias for the key
Throws:
LDAPException - Since this method is not yet implemented, calling this method throws an exception. Note: enableClientAuth(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String) is deprecated. This method is replaced by any one of the following constructors:

LDAPSSLSocketFactory(boolean) LDAPSSLSocketFactory(java.lang.String, boolean) LDAPSSLSocketFactory(java.lang.String, java.lang.Object, boolean)

See Also:
isClientAuth(), makeSocket(java.lang.String, int)

isClientAuth

public boolean isClientAuth()
Returns true if client authentication is enabled.
Specified by:
isClientAuth in interface LDAPSSLSocketFactoryExt
See Also:
LDAPSSLSocketFactory

getSSLSocketImpl

public java.lang.String getSSLSocketImpl()
Returns the name of the class that implements SSL sockets for this factory.
Returns:
the name of the class that implements SSL sockets for this factory.

getCipherSuites

public java.lang.Object getCipherSuites()
Returns the suite of ciphers used for SSL connections made through sockets created by this factory.
Specified by:
getCipherSuites in interface LDAPSSLSocketFactoryExt
Returns:
the suite of ciphers used.

makeSocket

public java.net.Socket makeSocket(java.lang.String host,
                                  int port)
                           throws LDAPException
Returns a socket to the LDAP server with the specified host name and port number.
Parameters:
host - the host to connect to
port - the port number
Returns:
the socket to the host name and port number.
Throws:
LDAPException - A socket to the specified host and port could not be created.
See Also:
LDAPSSLSocketFactory

LDAPJDK 4.1