org.openliberty.wsc
Class OpenLibertyBootstrap

java.lang.Object
  extended by org.openliberty.wsc.OpenLibertyBootstrap

public class OpenLibertyBootstrap
extends java.lang.Object

This class is used to bootstrap the openLiberty WSC Client Library with the default configurations that ship with the library. It is also used to store basic settings for an Authentication server, SSL parameters, and trusted certificates.

Author:
asa

Field Summary
private static java.lang.String authenticationServiceUrl
          Default URL for a starting Authentication Service to enable bootstrapping the ID-WSF environment
private static AuthenticationService.AuthMechanism authMechanism
           
private static java.lang.String authPassword
          Default password for default AS
private static java.lang.String authUsername
          Default username for default AS
private static boolean checkExpiry
          SSLClient setting for SSLUtilities: If false the expiration date is ignored on certs used for TLS.
private static boolean checkHostName
          SSLClient setting for SSLUtilities: If false, host name is not verified for SSL transactions.
private static java.lang.String defaultClientTLSPKSAlias
          Alias for the ClientTLS PKS private key
private static java.lang.String defaultClientTLSPKSPassword
          Password for the ClientTLS PKS private key
private static java.lang.String defaultClientTLSPKSPath
          This is the path (resource or system path) to the default PKS that the ClientLib will use for ClientTLS.
private static java.lang.String defaultSigningPKSAlias
          Alias for the signing PKS private key
private static java.lang.String defaultSigningPKSPassword
          Password for the signing PKS private key
private static java.lang.String defaultSigningPKSPath
          This is the path (resource or system path) to the default PKS that the ClientLib will use for signing.
private static org.apache.log4j.Logger log
           
private static java.lang.String providerIDUri
          ProviderID to be used in the Sender header of WSF SOAP messages
private static java.util.List<java.security.cert.X509Certificate> trustedCertificates
          These certificates are loaded as Trust material into the SSLClient when a request is about to be made.
private static java.lang.String[] xmlToolingConfigs
          List of default XMLTooling configuration files.
 
Constructor Summary
protected OpenLibertyBootstrap()
          protected constructor
 
Method Summary
static void bootstrap()
          Initializes the OpenLiberty library, loading default configurations.
static java.lang.String getAuthenticationServiceUrl()
           
static AuthenticationService.AuthMechanism getAuthMechanism()
           
static java.lang.String getAuthPassword()
           
static java.lang.String getAuthUsername()
           
static java.lang.String getDefaultClientTLSPKSAlias()
           
static java.lang.String getDefaultClientTLSPKSPassword()
           
static java.lang.String getDefaultClientTLSPKSPath()
           
static java.lang.String getDefaultSigningPKSAlias()
           
static java.lang.String getDefaultSigningPKSPassword()
           
static java.lang.String getDefaultSigningPKSPath()
           
static java.lang.String getProviderIDUri()
           
static java.util.List<java.security.cert.X509Certificate> getTrustedCertificates()
           
protected static void initializeClientLibProperties()
          This static initializer loads all of the base settings for the ClientLib
protected static void initializeXMLTooling(java.lang.String[] providerConfigs)
          Initializes the XMLTooling library with a default set of object providers.
static boolean isCheckExpiry()
           
static boolean isCheckHostName()
           
static void setAuthenticationServiceUrl(java.lang.String authenticationServiceUrl)
           
static void setAuthMechanism(AuthenticationService.AuthMechanism authMechanism)
           
static void setAuthPassword(java.lang.String authPassword)
           
static void setAuthUsername(java.lang.String authUsername)
           
static void setCheckExpiry(boolean checkExpiry)
           
static void setCheckHostName(boolean checkHostName)
           
static void setDefaultClientTLSPKSAlias(java.lang.String defaultClientTLSPKSAlias)
           
static void setDefaultClientTLSPKSPassword(java.lang.String defaultClientTLSPKSPassword)
           
static void setDefaultClientTLSPKSPath(java.lang.String defaultClientTLSPKSPath)
           
static void setDefaultSigningPKSAlias(java.lang.String defaultSigningPKSAlias)
           
static void setDefaultSigningPKSPassword(java.lang.String defaultSigningPKSPassword)
           
static void setDefaultSigningPKSPath(java.lang.String defaultSigningPKSPath)
           
static void setProviderIDUri(java.lang.String providerIDUri)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

log

private static org.apache.log4j.Logger log

providerIDUri

private static java.lang.String providerIDUri
ProviderID to be used in the Sender header of WSF SOAP messages


authenticationServiceUrl

private static java.lang.String authenticationServiceUrl
Default URL for a starting Authentication Service to enable bootstrapping the ID-WSF environment


authUsername

private static java.lang.String authUsername
Default username for default AS


authPassword

private static java.lang.String authPassword
Default password for default AS


authMechanism

private static AuthenticationService.AuthMechanism authMechanism

trustedCertificates

private static java.util.List<java.security.cert.X509Certificate> trustedCertificates
These certificates are loaded as Trust material into the SSLClient when a request is about to be made.


defaultSigningPKSPath

private static java.lang.String defaultSigningPKSPath
This is the path (resource or system path) to the default PKS that the ClientLib will use for signing.


defaultSigningPKSAlias

private static java.lang.String defaultSigningPKSAlias
Alias for the signing PKS private key


defaultSigningPKSPassword

private static java.lang.String defaultSigningPKSPassword
Password for the signing PKS private key


defaultClientTLSPKSPath

private static java.lang.String defaultClientTLSPKSPath
This is the path (resource or system path) to the default PKS that the ClientLib will use for ClientTLS.


defaultClientTLSPKSAlias

private static java.lang.String defaultClientTLSPKSAlias
Alias for the ClientTLS PKS private key


defaultClientTLSPKSPassword

private static java.lang.String defaultClientTLSPKSPassword
Password for the ClientTLS PKS private key


checkHostName

private static boolean checkHostName
SSLClient setting for SSLUtilities: If false, host name is not verified for SSL transactions. In production this should always be set to true. The default value is true.


checkExpiry

private static boolean checkExpiry
SSLClient setting for SSLUtilities: If false the expiration date is ignored on certs used for TLS. The default value is true.


xmlToolingConfigs

private static java.lang.String[] xmlToolingConfigs
List of default XMLTooling configuration files. This list is used to initialize all of the openLiberty and OpenSAML XML Tooling libraries.

Constructor Detail

OpenLibertyBootstrap

protected OpenLibertyBootstrap()
protected constructor

Method Detail

bootstrap

public static void bootstrap()
                      throws org.opensaml.xml.ConfigurationException
Initializes the OpenLiberty library, loading default configurations.

Throws:
org.opensaml.xml.ConfigurationException - thrown if there is a problem initializing the OpenSAML library

initializeXMLTooling

protected static void initializeXMLTooling(java.lang.String[] providerConfigs)
                                    throws org.opensaml.xml.ConfigurationException
Initializes the XMLTooling library with a default set of object providers.

Parameters:
providerConfigs - list of provider configuration files located on the classpath
Throws:
org.opensaml.xml.ConfigurationException - thrown if there is a problem loading the configuration files

initializeClientLibProperties

protected static void initializeClientLibProperties()
This static initializer loads all of the base settings for the ClientLib

TODO: Load the base configuration from a settings file


getAuthenticationServiceUrl

public static java.lang.String getAuthenticationServiceUrl()

getAuthPassword

public static java.lang.String getAuthPassword()

getAuthUsername

public static java.lang.String getAuthUsername()

getProviderIDUri

public static java.lang.String getProviderIDUri()

getAuthMechanism

public static AuthenticationService.AuthMechanism getAuthMechanism()

getDefaultClientTLSPKSAlias

public static java.lang.String getDefaultClientTLSPKSAlias()

getDefaultClientTLSPKSPassword

public static java.lang.String getDefaultClientTLSPKSPassword()

getDefaultClientTLSPKSPath

public static java.lang.String getDefaultClientTLSPKSPath()

getDefaultSigningPKSAlias

public static java.lang.String getDefaultSigningPKSAlias()

getDefaultSigningPKSPassword

public static java.lang.String getDefaultSigningPKSPassword()

getDefaultSigningPKSPath

public static java.lang.String getDefaultSigningPKSPath()

getTrustedCertificates

public static java.util.List<java.security.cert.X509Certificate> getTrustedCertificates()

isCheckHostName

public static boolean isCheckHostName()

isCheckExpiry

public static boolean isCheckExpiry()

setAuthenticationServiceUrl

public static void setAuthenticationServiceUrl(java.lang.String authenticationServiceUrl)

setAuthPassword

public static void setAuthPassword(java.lang.String authPassword)

setAuthUsername

public static void setAuthUsername(java.lang.String authUsername)

setProviderIDUri

public static void setProviderIDUri(java.lang.String providerIDUri)

setAuthMechanism

public static void setAuthMechanism(AuthenticationService.AuthMechanism authMechanism)

setDefaultClientTLSPKSAlias

public static void setDefaultClientTLSPKSAlias(java.lang.String defaultClientTLSPKSAlias)

setDefaultClientTLSPKSPassword

public static void setDefaultClientTLSPKSPassword(java.lang.String defaultClientTLSPKSPassword)

setDefaultClientTLSPKSPath

public static void setDefaultClientTLSPKSPath(java.lang.String defaultClientTLSPKSPath)

setDefaultSigningPKSAlias

public static void setDefaultSigningPKSAlias(java.lang.String defaultSigningPKSAlias)

setDefaultSigningPKSPassword

public static void setDefaultSigningPKSPassword(java.lang.String defaultSigningPKSPassword)

setDefaultSigningPKSPath

public static void setDefaultSigningPKSPath(java.lang.String defaultSigningPKSPath)

setCheckHostName

public static void setCheckHostName(boolean checkHostName)

setCheckExpiry

public static void setCheckExpiry(boolean checkExpiry)