com.pcbsys.nirvana.nAdminAPI.nSSLInterface Class Reference

This class contains all the configuration required by the Nirvana Realm server to start and control the SSL interface. More...

Inheritance diagram for com.pcbsys.nirvana.nAdminAPI.nSSLInterface:
com.pcbsys.nirvana.nAdminAPI.nSocketInterface com.pcbsys.nirvana.nAdminAPI.nSSLInterfaceAPI com.pcbsys.nirvana.nAdminAPI.nInterface com.pcbsys.nirvana.nAdminAPI.nBaseInterface

Public Member Functions

virtual string getAlias ()
 Returns the certificate name/alias that this interface uses as its primary certificate More...
 
virtual bool getCertRequired ()
 Returns whether this interface requires SSL client authentication or not. More...
 
virtual string getCRLFile ()
 Returns the Certificate revocation list that the server uses. More...
 
virtual string getCRLValidationClassName ()
 Any class that extends com.pcbsys.nirvana.server.api.nSSLCertficateValidator can be used by the server to perform CRL management. More...
 
virtual string[] getEnabledCiphers ()
 Returns an array of strings which represent the current Ciphers enabled for use by this interface More...
 
virtual string getKeyStore ()
 Returns the name of the keystore file that this interface uses to load the certificate from. More...
 
virtual string getPKCS11ConfigFile ()
 Get the PKCS11 configuration file used by this SSL interface on the UM server. More...
 
virtual string getPKCS11NSSName ()
 Get the PKCS11 NSS name that unique identifies the PKCS11 configuration on the UM server. More...
 
virtual string getProvider ()
 Get the name of the JSSE provider used by this SSL interface More...
 
virtual string getRandomAlgorithm ()
 Returns the SecureRandom algoritm used for this interface. More...
 
virtual string getRandomProvider ()
 Returns the SecureRandom provider used by this interface. More...
 
virtual string[] getSupportedCiphers ()
 Returns an array of ciphers this this interface can be configured for use by this interface. More...
 
virtual string getTrustStore ()
 Returns the current truststore file that this interface uses to validate the client certificate chain against. More...
 
 nSSLInterface (string adapter, int port)
 Creates a new SSL interface bound to the adapter and port supplied More...
 
 nSSLInterface (string adapter, int port, bool autostart)
 Creates a new SSL interface bound to the adapter and port supplied More...
 
virtual void setAlias (string alias)
 Sets the certificate name/alias that this interface will use to select its certificate from a keystore with multpiple entries. More...
 
virtual void setCertRequired (bool required)
 Specifies whether this interface requires SSL client authentication or not. More...
 
virtual void setCRLFile (string fileName)
 Sets the Certificate revocation list file name that the interface should use to check the incomming ssl connections. More...
 
virtual void setCRLValidationClassName (string className)
 Any class that extends com.pcbsys.nirvana.server.api.nSSLCertficateValidator can be used by the server to perform CRL management. More...
 
virtual void setEnabledCiphers (string[] ciphers)
 Specifies the names of the ciphers enabled for use by this interface. More...
 
virtual void setEnabledCiphers (string[] ciphers, bool checkSupported)
 Specifies the names of the ciphers enabled for use by this interface. More...
 
virtual void setKeyStore (string keyStore)
 Sets the keystore file that this interface uses to load the certificate from More...
 
virtual void setKeyStorePassword (string keyStorePassword)
 Sets the keystore password that this interface will use to access the keystore file specified. More...
 
virtual void setPKCS11ConfigFile (string location)
 Sets the name of the PKCS11 configuration used by this SSL interface on the UM server. More...
 
virtual void setPKCS11NSSName (string name)
 Sets the name of the PKCS11 NSS name that uniquely identifies the PKCS11 configuration on the UM server. More...
 
virtual void setPrivateKeyPassword (string password)
 Sets the private key password so that the key can be loaded from the key store More...
 
virtual void setProvider (string provider)
 Sets the name of the JSSE provider to use for the interface More...
 
virtual void setRandomAlgorithm (string alg)
 Sets the SecureRandom algorithm to use for this interface More...
 
virtual void setRandomProvider (string prov)
 Sets the SecureRandom provider to use for this interface More...
 
virtual void setTrustStore (string trustStore)
 Sets the truststore file that this interface uses to validate the client certificate against. More...
 
virtual void setTrustStorePassword (string trustStorePassword)
 Changes the truststore's password that the server uses to access the trust store More...
 
- Public Member Functions inherited from com.pcbsys.nirvana.nAdminAPI.nSocketInterface
 nSocketInterface (string adapter, int port)
 Creates a new Socket Interface with the supplied values More...
 
 nSocketInterface (string adapter, int port, bool autostart)
 Creates a new Socket Interface with the supplied values More...
 
- Public Member Functions inherited from com.pcbsys.nirvana.nAdminAPI.nInterface
virtual bool canAdvertise ()
 Will this interface be used by other realms to send client redirects to. More...
 
bool Equals (long aLong)
 used to sort interfaces
 
override bool Equals (object item)
 used to sort interfaces
 
virtual string getAdapaterAlias ()
 Returns the interfaces known alias's. More...
 
virtual string getAdapter ()
 Get the adapter that this interface will use. More...
 
virtual int getAuthTimeOut ()
 Returns the number of milliseconds that the remote client has to authenticate with the server before the server closes the communications with the client. More...
 
virtual int getBacklog ()
 The number of socket connect requests that the Operating System will queue before sending a reject to the remote client. More...
 
virtual int getPort ()
 Get the port that this interface will bind to at startup More...
 
virtual string getProtocol ()
 Returns the protocol string used by this interface. More...
 
virtual int getRecvBufferSize ()
 Return the socket buffer size in bytes used by this interface when receiving data More...
 
virtual int getSelectThreadSize ()
 Returns the number of select threads used by NIO More...
 
virtual int getSendBufferSize ()
 Return the socket buffer size in bytes used by this interface when sending data More...
 
virtual int getThreadCount ()
 Returns the current Thread Pool size that handles client socket connections. More...
 
virtual string getURL ()
 Get the URL that specifies this interface. More...
 
virtual nACL getViaList ()
 Retrieves the interfaces Via list. More...
 
virtual bool isAllowNIO ()
 Returns whether NIO is enabled on this interface More...
 
virtual bool isClientConnectionsAllowed ()
 Returns whether this interface can be used by clients to connect More...
 
virtual bool isInterRealmAllow ()
 Returns whether this interface is allowed to be used in inter realm / cluster communication More...
 
virtual bool lessThan (long aLong)
 used to sort interfaces
 
virtual bool lessThan (object item)
 used to sort interfaces
 
virtual void setAdapterAlias (string alias)
 Sets the interfaces alias. More...
 
virtual void setAdvertise (bool flag)
 Change the current advertise status for this interface More...
 
virtual void setAllowClientConnections (bool clientconnections)
 Sets whether this interface can accept client connections or not More...
 
virtual void setAllowNIO (bool allowNIO)
 Set whether NIO is enabled on the interface More...
 
virtual void setAuthTimeOut (int timeout)
 Changes the number of milliseconds that the remote client has to authenticate with the server. More...
 
virtual void setAutostart (bool flag)
 Change the current Autostart status for this interface More...
 
virtual void setBacklog (int backlog)
 Changes the number of connections to queue before the Operating System will send rejects to the remote client More...
 
virtual void setInterRealmAllow (bool interealmAllow)
 Sets whether this interface is allowed to be used in inter realm / cluster communication More...
 
virtual void setManager (nInterfaceManager im)
 Sets the interface manager More...
 
virtual void setRecvBufferSize (int myRecvBufferSize)
 Set the socket buffer size in bytes used by this interface when receiving data More...
 
virtual void setSelectThreadSize (int selectThreadSize)
 Sets the number of select threads used by NIO More...
 
virtual void setSendBufferSize (int mySendBufferSize)
 Set the socket buffer size in bytes used by this interface when sending data More...
 
virtual void setThreadCount (int count)
 Changes the thread pool size handling the client connections More...
 
virtual void setUseForProxyForward (bool useForproxyForward)
 Set whether or not to use proxy forwarding More...
 
virtual void setViaList (nACL acl)
 Commits the nACL object passed in with the Realm Server. More...
 
override string ToString ()
 Return a string representation of the interface details More...
 
virtual bool useForProxyForward ()
 Indicates whether or not to use proxy forwarding More...
 
virtual bool willAutostart ()
 Will this interface automatically be started when the Realm Server starts More...
 
- Public Member Functions inherited from com.pcbsys.nirvana.nAdminAPI.nBaseInterface
int getPort ()
 Get the port that this interface will bind to at startup More...
 
String getURL ()
 Get the URL that specifies this interface. It is made up from the protocol the adapter and port More...
 
void setAutostart (bool flag)
 Change the current Autostart status for this interface More...
 
bool willAutostart ()
 Will this interface automatically be started when the Realm Server starts More...
 

Detailed Description

This class contains all the configuration required by the Nirvana Realm server to start and control the SSL interface.

Constructor & Destructor Documentation

com.pcbsys.nirvana.nAdminAPI.nSSLInterface.nSSLInterface ( string  adapter,
int  port 
)

Creates a new SSL interface bound to the adapter and port supplied

Parameters
adapterto bind to
portto bind to
Exceptions
nAdminIllegalArgumentExceptionif the adapter is null or the port is in an invalid range
com.pcbsys.nirvana.nAdminAPI.nSSLInterface.nSSLInterface ( string  adapter,
int  port,
bool  autostart 
)

Creates a new SSL interface bound to the adapter and port supplied

Parameters
adapterto bind to
portto bind to
autostartShoud it be autostarted
Exceptions
nAdminIllegalArgumentExceptionif the adapter is null or the port is in an invalid range

Member Function Documentation

virtual string com.pcbsys.nirvana.nAdminAPI.nSSLInterface.getAlias ( )
virtual

Returns the certificate name/alias that this interface uses as its primary certificate

Returns
the Name/Alias of the certificate as a String

nHTTPSInterface

Implements com.pcbsys.nirvana.nAdminAPI.nSSLInterfaceAPI.

virtual bool com.pcbsys.nirvana.nAdminAPI.nSSLInterface.getCertRequired ( )
virtual

Returns whether this interface requires SSL client authentication or not.

If this is set to false then this interface allows anonymous connections using SSL. Otherwise the client must have and present a valid certificate chain during the SSL handshake.

Returns
a boolean specifying the SSL client authentication setting

nHTTPSInterface

Implements com.pcbsys.nirvana.nAdminAPI.nSSLInterfaceAPI.

virtual string com.pcbsys.nirvana.nAdminAPI.nSSLInterface.getCRLFile ( )
virtual

Returns the Certificate revocation list that the server uses.

Returns
the CRL file name that the interface uses

Implements com.pcbsys.nirvana.nAdminAPI.nSSLInterfaceAPI.

virtual string com.pcbsys.nirvana.nAdminAPI.nSSLInterface.getCRLValidationClassName ( )
virtual

Any class that extends com.pcbsys.nirvana.server.api.nSSLCertficateValidator can be used by the server to perform CRL management.

The class name can be supplied per interface and then when a client connects a callout is issued to this class to validate the connection.

Returns
current class name of the CRL validation

Implements com.pcbsys.nirvana.nAdminAPI.nSSLInterfaceAPI.

virtual string [] com.pcbsys.nirvana.nAdminAPI.nSSLInterface.getEnabledCiphers ( )
virtual

Returns an array of strings which represent the current Ciphers enabled for use by this interface

Returns
a String[] containing the names of the ciphers enabled for use by this interface

nHTTPSInterface

Implements com.pcbsys.nirvana.nAdminAPI.nSSLInterfaceAPI.

virtual string com.pcbsys.nirvana.nAdminAPI.nSSLInterface.getKeyStore ( )
virtual

Returns the name of the keystore file that this interface uses to load the certificate from.

Returns
The name of the keystore file to use as a String

nHTTPSInterface

Implements com.pcbsys.nirvana.nAdminAPI.nSSLInterfaceAPI.

virtual string com.pcbsys.nirvana.nAdminAPI.nSSLInterface.getPKCS11ConfigFile ( )
virtual

Get the PKCS11 configuration file used by this SSL interface on the UM server.

Returns
The name of the PKCS11 configuration file.

Implements com.pcbsys.nirvana.nAdminAPI.nSSLInterfaceAPI.

virtual string com.pcbsys.nirvana.nAdminAPI.nSSLInterface.getPKCS11NSSName ( )
virtual

Get the PKCS11 NSS name that unique identifies the PKCS11 configuration on the UM server.

Returns
The NSS Name used in the PKCS11 configuration file.

Implements com.pcbsys.nirvana.nAdminAPI.nSSLInterfaceAPI.

virtual string com.pcbsys.nirvana.nAdminAPI.nSSLInterface.getProvider ( )
virtual

Get the name of the JSSE provider used by this SSL interface

Returns
The name of the JSSE provider being used for the interface

Implements com.pcbsys.nirvana.nAdminAPI.nSSLInterfaceAPI.

virtual string com.pcbsys.nirvana.nAdminAPI.nSSLInterface.getRandomAlgorithm ( )
virtual

Returns the SecureRandom algoritm used for this interface.

If it is null it uses the system default algorithm.

Returns
a String specifying the Random Algorithm used by this interface

nHTTPSInterface

Implements com.pcbsys.nirvana.nAdminAPI.nSSLInterfaceAPI.

virtual string com.pcbsys.nirvana.nAdminAPI.nSSLInterface.getRandomProvider ( )
virtual

Returns the SecureRandom provider used by this interface.

If it is null it uses the system default provider.

Returns
a String specifying the Secure Random provider used by this interface

nHTTPSInterface

Implements com.pcbsys.nirvana.nAdminAPI.nSSLInterfaceAPI.

virtual string [] com.pcbsys.nirvana.nAdminAPI.nSSLInterface.getSupportedCiphers ( )
virtual

Returns an array of ciphers this this interface can be configured for use by this interface.

  • If the cipher is not in this list then the interface can not support it.
Returns
String[] of ciphers which can be configured for use by this interface

nHTTPSInterface

Implements com.pcbsys.nirvana.nAdminAPI.nSSLInterfaceAPI.

virtual string com.pcbsys.nirvana.nAdminAPI.nSSLInterface.getTrustStore ( )
virtual

Returns the current truststore file that this interface uses to validate the client certificate chain against.

Returns
the Truststore file name as a String

nHTTPSInterface

Implements com.pcbsys.nirvana.nAdminAPI.nSSLInterfaceAPI.

virtual void com.pcbsys.nirvana.nAdminAPI.nSSLInterface.setAlias ( string  alias)
virtual

Sets the certificate name/alias that this interface will use to select its certificate from a keystore with multpiple entries.

Parameters
aliasthe name/alias to use as a String
Exceptions
nAdminIllegalArgumentExceptionif an illegal argument is specified

nHTTPSInterface

Implements com.pcbsys.nirvana.nAdminAPI.nSSLInterfaceAPI.

virtual void com.pcbsys.nirvana.nAdminAPI.nSSLInterface.setCertRequired ( bool  required)
virtual

Specifies whether this interface requires SSL client authentication or not.

If this is set to false then this interface allows anonymous connections using SSL. Otherwise the client must have and present a valid certificate chain during the SSL handshake.

Parameters
requireda boolean specifying if this interface will force client authentication

nHTTPSInterface

Implements com.pcbsys.nirvana.nAdminAPI.nSSLInterfaceAPI.

virtual void com.pcbsys.nirvana.nAdminAPI.nSSLInterface.setCRLFile ( string  fileName)
virtual

Sets the Certificate revocation list file name that the interface should use to check the incomming ssl connections.

Is only used when client certificates are required.

  • The file should be in a standard X.509 Certificate Revocation List (CRL)
Parameters
fileNamethe file name used as the CRL

Implements com.pcbsys.nirvana.nAdminAPI.nSSLInterfaceAPI.

virtual void com.pcbsys.nirvana.nAdminAPI.nSSLInterface.setCRLValidationClassName ( string  className)
virtual

Any class that extends com.pcbsys.nirvana.server.api.nSSLCertficateValidator can be used by the server to perform CRL management.

The class name can be supplied per interface and then when a client connects a callout is issued to this class to validate the connection.

Parameters
classNamethe classname of the certificate validator to use within this interface

Implements com.pcbsys.nirvana.nAdminAPI.nSSLInterfaceAPI.

virtual void com.pcbsys.nirvana.nAdminAPI.nSSLInterface.setEnabledCiphers ( string[]  ciphers)
virtual

Specifies the names of the ciphers enabled for use by this interface.

Parameters
ciphersa String[] of ciphers enabled for use by this interface
Exceptions
nAdminIllegalArgumentExceptionif an empty or null array is specified

nHTTPSInterface

Implements com.pcbsys.nirvana.nAdminAPI.nSSLInterfaceAPI.

virtual void com.pcbsys.nirvana.nAdminAPI.nSSLInterface.setEnabledCiphers ( string[]  ciphers,
bool  checkSupported 
)
virtual

Specifies the names of the ciphers enabled for use by this interface.

Parameters
ciphersa String[] of ciphers enabled for use by this interface
checkSupporteda boolean to indicate whether to validate the list against those ciphers supported by the server
Exceptions
nAdminIllegalArgumentExceptionif an empty or null array is specified

nHTTPSInterface

virtual void com.pcbsys.nirvana.nAdminAPI.nSSLInterface.setKeyStore ( string  keyStore)
virtual

Sets the keystore file that this interface uses to load the certificate from

Parameters
keyStorethe new keystore name as a String
Exceptions
nAdminIllegalArgumentExceptionif an illegal argument is specified

nHTTPSInterface

Implements com.pcbsys.nirvana.nAdminAPI.nSSLInterfaceAPI.

virtual void com.pcbsys.nirvana.nAdminAPI.nSSLInterface.setKeyStorePassword ( string  keyStorePassword)
virtual

Sets the keystore password that this interface will use to access the keystore file specified.

Parameters
keyStorePasswordthe new password as a string
Exceptions
nAdminIllegalArgumentExceptionif an illegal argument is specified

nHTTPSInterface

Implements com.pcbsys.nirvana.nAdminAPI.nSSLInterfaceAPI.

virtual void com.pcbsys.nirvana.nAdminAPI.nSSLInterface.setPKCS11ConfigFile ( string  location)
virtual

Sets the name of the PKCS11 configuration used by this SSL interface on the UM server.

Parameters
locationthe location/path of the PKCS11 configuration file.

Implements com.pcbsys.nirvana.nAdminAPI.nSSLInterfaceAPI.

virtual void com.pcbsys.nirvana.nAdminAPI.nSSLInterface.setPKCS11NSSName ( string  name)
virtual

Sets the name of the PKCS11 NSS name that uniquely identifies the PKCS11 configuration on the UM server.

Parameters
nameThe NSS name of the PKCS11 configuration file.

Implements com.pcbsys.nirvana.nAdminAPI.nSSLInterfaceAPI.

virtual void com.pcbsys.nirvana.nAdminAPI.nSSLInterface.setPrivateKeyPassword ( string  password)
virtual

Sets the private key password so that the key can be loaded from the key store

Parameters
passwordfor the private key as a String
Exceptions
nAdminIllegalArgumentExceptionif an illegal argument is specified

nHTTPSInterface

Implements com.pcbsys.nirvana.nAdminAPI.nSSLInterfaceAPI.

virtual void com.pcbsys.nirvana.nAdminAPI.nSSLInterface.setProvider ( string  provider)
virtual

Sets the name of the JSSE provider to use for the interface

Parameters
providerthe name of the JSSE provider to use

Implements com.pcbsys.nirvana.nAdminAPI.nSSLInterfaceAPI.

virtual void com.pcbsys.nirvana.nAdminAPI.nSSLInterface.setRandomAlgorithm ( string  alg)
virtual

Sets the SecureRandom algorithm to use for this interface

Parameters
algthe name of the new SecureRandom algorithm to use

nHTTPSInterface

Implements com.pcbsys.nirvana.nAdminAPI.nSSLInterfaceAPI.

virtual void com.pcbsys.nirvana.nAdminAPI.nSSLInterface.setRandomProvider ( string  prov)
virtual

Sets the SecureRandom provider to use for this interface

Parameters
provthe name of the new SecureRandom provider to use

nHTTPSInterface

Implements com.pcbsys.nirvana.nAdminAPI.nSSLInterfaceAPI.

virtual void com.pcbsys.nirvana.nAdminAPI.nSSLInterface.setTrustStore ( string  trustStore)
virtual

Sets the truststore file that this interface uses to validate the client certificate against.

Parameters
trustStorethe new truststore file to use
Exceptions
nAdminIllegalArgumentExceptionif an illegal argument is specified

nHTTPSInterface

Implements com.pcbsys.nirvana.nAdminAPI.nSSLInterfaceAPI.

virtual void com.pcbsys.nirvana.nAdminAPI.nSSLInterface.setTrustStorePassword ( string  trustStorePassword)
virtual

Changes the truststore's password that the server uses to access the trust store

Parameters
trustStorePasswordthe new password to use as a String
Exceptions
nAdminIllegalArgumentExceptionif an illegal argument is specified

nHTTPSInterface

Implements com.pcbsys.nirvana.nAdminAPI.nSSLInterfaceAPI.