Package org.globus.gsi.jsse
Class SSLConfigurator
- java.lang.Object
-
- org.globus.gsi.jsse.SSLConfigurator
-
public class SSLConfigurator extends java.lang.Object
This class is used to configure and create SSL socket factories. The factories can either be built by setting the credentialStore, crlStore, trustAnchorStore and policyStore directly, or it can use the java security SPI mechanism. This is the simplest way to configure the globus ssl support.- Since:
- 1.0
- Version:
- ${version}
-
-
Field Summary
Fields Modifier and Type Field Description private java.security.KeyStore
credentialStore
private java.lang.String
credentialStoreLocation
private java.lang.String
credentialStorePassword
private java.lang.String
credentialStoreType
private java.lang.String
crlLocationPattern
private java.security.cert.CertStore
crlStore
private java.lang.String
crlStoreType
private java.util.Map<java.lang.String,ProxyPolicyHandler>
handlers
private org.apache.commons.logging.Log
logger
private SigningPolicyStore
policyStore
private java.lang.String
protocol
private java.lang.String
provider
private boolean
rejectLimitProxy
private java.lang.String
secureRandomAlgorithm
private javax.net.ssl.SSLContext
sslContext
private java.lang.String
sslKeyManagerFactoryAlgorithm
private java.security.KeyStore
trustAnchorStore
private java.lang.String
trustAnchorStoreLocation
private java.lang.String
trustAnchorStorePassword
private java.lang.String
trustAnchorStoreType
-
Constructor Summary
Constructors Constructor Description SSLConfigurator()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
configureContext()
javax.net.ssl.SSLSocketFactory
createFactory()
Create an SSLSocketFactory based on the configured stores.javax.net.ssl.SSLServerSocketFactory
createServerFactory()
Create an SSLServerSocketFactory based on the configured stores.private javax.net.ssl.ManagerFactoryParameters
getCertPathParameters()
java.security.KeyStore
getCredentialStore()
java.lang.String
getCredentialStoreLocation()
java.lang.String
getCredentialStorePassword()
java.lang.String
getCredentialStoreType()
java.lang.String
getCrlLocationPattern()
java.security.cert.CertStore
getCrlStore()
java.lang.String
getCrlStoreType()
java.util.Map<java.lang.String,ProxyPolicyHandler>
getHandlers()
SigningPolicyStore
getPolicyStore()
java.lang.String
getProtocol()
java.lang.String
getProvider()
java.lang.String
getSecureRandomAlgorithm()
javax.net.ssl.SSLContext
getSSLContext()
Create an SSLContext based on the configured stores.java.security.KeyStore
getTrustAnchorStore()
java.lang.String
getTrustAnchorStoreLocation()
java.lang.String
getTrustAnchorStorePassword()
java.lang.String
getTrustAnchorStoreType()
boolean
isRejectLimitProxy()
private javax.net.ssl.KeyManager[]
loadKeyManagers()
private java.security.SecureRandom
loadSecureRandom()
private javax.net.ssl.SSLContext
loadSSLContext()
void
setCredentialStore(java.security.KeyStore credentialStore)
void
setCredentialStoreLocation(java.lang.String credentialStoreLocation)
void
setCredentialStorePassword(java.lang.String credentialStorePassword)
void
setCredentialStoreType(java.lang.String credentialStoreType)
void
setCrlLocationPattern(java.lang.String crlLocationPattern)
void
setCrlStore(java.security.cert.CertStore crlStore)
void
setCrlStoreType(java.lang.String crlStoreType)
void
setHandlers(java.util.Map<java.lang.String,ProxyPolicyHandler> handlers)
void
setPolicyStore(SigningPolicyStore policyStore)
void
setProtocol(java.lang.String protocol)
void
setProvider(java.lang.String provider)
void
setRejectLimitProxy(boolean rejectLimitProxy)
void
setSecureRandomAlgorithm(java.lang.String secureRandomAlgorithm)
void
setTrustAnchorStore(java.security.KeyStore trustAnchorStore)
void
setTrustAnchorStoreLocation(java.lang.String trustAnchorStoreLocation)
void
setTrustAnchorStorePassword(java.lang.String trustAnchorStorePassword)
void
setTrustAnchorStoreType(java.lang.String trustAnchorStoreType)
-
-
-
Field Detail
-
provider
private java.lang.String provider
-
protocol
private java.lang.String protocol
-
secureRandomAlgorithm
private java.lang.String secureRandomAlgorithm
-
credentialStore
private java.security.KeyStore credentialStore
-
trustAnchorStore
private java.security.KeyStore trustAnchorStore
-
crlStore
private java.security.cert.CertStore crlStore
-
policyStore
private SigningPolicyStore policyStore
-
rejectLimitProxy
private boolean rejectLimitProxy
-
handlers
private java.util.Map<java.lang.String,ProxyPolicyHandler> handlers
-
trustAnchorStoreType
private java.lang.String trustAnchorStoreType
-
trustAnchorStoreLocation
private java.lang.String trustAnchorStoreLocation
-
trustAnchorStorePassword
private java.lang.String trustAnchorStorePassword
-
credentialStoreType
private java.lang.String credentialStoreType
-
credentialStoreLocation
private java.lang.String credentialStoreLocation
-
credentialStorePassword
private java.lang.String credentialStorePassword
-
crlStoreType
private java.lang.String crlStoreType
-
crlLocationPattern
private java.lang.String crlLocationPattern
-
sslContext
private javax.net.ssl.SSLContext sslContext
-
logger
private org.apache.commons.logging.Log logger
-
sslKeyManagerFactoryAlgorithm
private java.lang.String sslKeyManagerFactoryAlgorithm
-
-
Method Detail
-
createFactory
public javax.net.ssl.SSLSocketFactory createFactory() throws GlobusSSLConfigurationException
Create an SSLSocketFactory based on the configured stores.- Returns:
- A configured SSLSocketFactory
- Throws:
GlobusSSLConfigurationException
- If we fail to create the socketFactory.
-
getSSLContext
public javax.net.ssl.SSLContext getSSLContext() throws GlobusSSLConfigurationException
Create an SSLContext based on the configured stores.- Returns:
- A configured SSLContext.
- Throws:
GlobusSSLConfigurationException
- If we fail to create the context.
-
createServerFactory
public javax.net.ssl.SSLServerSocketFactory createServerFactory() throws GlobusSSLConfigurationException
Create an SSLServerSocketFactory based on the configured stores.- Returns:
- A configured SSLServerSocketFactory
- Throws:
GlobusSSLConfigurationException
- If we fail to create the server socket factory.
-
configureContext
private void configureContext() throws GlobusSSLConfigurationException
- Throws:
GlobusSSLConfigurationException
-
getCertPathParameters
private javax.net.ssl.ManagerFactoryParameters getCertPathParameters() throws GlobusSSLConfigurationException
- Throws:
GlobusSSLConfigurationException
-
loadSSLContext
private javax.net.ssl.SSLContext loadSSLContext() throws GlobusSSLConfigurationException
- Throws:
GlobusSSLConfigurationException
-
loadSecureRandom
private java.security.SecureRandom loadSecureRandom() throws GlobusSSLConfigurationException
- Throws:
GlobusSSLConfigurationException
-
loadKeyManagers
private javax.net.ssl.KeyManager[] loadKeyManagers() throws GlobusSSLConfigurationException
- Throws:
GlobusSSLConfigurationException
-
getProvider
public java.lang.String getProvider()
-
setProvider
public void setProvider(java.lang.String provider)
-
getProtocol
public java.lang.String getProtocol()
-
setProtocol
public void setProtocol(java.lang.String protocol)
-
getSecureRandomAlgorithm
public java.lang.String getSecureRandomAlgorithm()
-
setSecureRandomAlgorithm
public void setSecureRandomAlgorithm(java.lang.String secureRandomAlgorithm)
-
getCredentialStorePassword
public java.lang.String getCredentialStorePassword()
-
setCredentialStorePassword
public void setCredentialStorePassword(java.lang.String credentialStorePassword)
-
getTrustAnchorStore
public java.security.KeyStore getTrustAnchorStore()
-
setTrustAnchorStore
public void setTrustAnchorStore(java.security.KeyStore trustAnchorStore)
-
getCrlStore
public java.security.cert.CertStore getCrlStore()
-
setCrlStore
public void setCrlStore(java.security.cert.CertStore crlStore)
-
getPolicyStore
public SigningPolicyStore getPolicyStore()
-
setPolicyStore
public void setPolicyStore(SigningPolicyStore policyStore)
-
isRejectLimitProxy
public boolean isRejectLimitProxy()
-
setRejectLimitProxy
public void setRejectLimitProxy(boolean rejectLimitProxy)
-
getHandlers
public java.util.Map<java.lang.String,ProxyPolicyHandler> getHandlers()
-
setHandlers
public void setHandlers(java.util.Map<java.lang.String,ProxyPolicyHandler> handlers)
-
getCredentialStoreLocation
public java.lang.String getCredentialStoreLocation()
-
setCredentialStoreLocation
public void setCredentialStoreLocation(java.lang.String credentialStoreLocation)
-
getCredentialStoreType
public java.lang.String getCredentialStoreType()
-
setCredentialStoreType
public void setCredentialStoreType(java.lang.String credentialStoreType)
-
getTrustAnchorStoreType
public java.lang.String getTrustAnchorStoreType()
-
setTrustAnchorStoreType
public void setTrustAnchorStoreType(java.lang.String trustAnchorStoreType)
-
getTrustAnchorStoreLocation
public java.lang.String getTrustAnchorStoreLocation()
-
setTrustAnchorStoreLocation
public void setTrustAnchorStoreLocation(java.lang.String trustAnchorStoreLocation)
-
getTrustAnchorStorePassword
public java.lang.String getTrustAnchorStorePassword()
-
setTrustAnchorStorePassword
public void setTrustAnchorStorePassword(java.lang.String trustAnchorStorePassword)
-
getCrlStoreType
public java.lang.String getCrlStoreType()
-
setCrlStoreType
public void setCrlStoreType(java.lang.String crlStoreType)
-
getCrlLocationPattern
public java.lang.String getCrlLocationPattern()
-
setCrlLocationPattern
public void setCrlLocationPattern(java.lang.String crlLocationPattern)
-
getCredentialStore
public java.security.KeyStore getCredentialStore()
-
setCredentialStore
public void setCredentialStore(java.security.KeyStore credentialStore)
-
-