Class SecuritySupportImpl
- java.lang.Object
-
- com.sun.enterprise.server.pluggable.SecuritySupport
-
- com.sun.enterprise.security.ssl.impl.SecuritySupportImpl
-
@Service @Singleton public class SecuritySupportImpl extends SecuritySupport
This implements SecuritySupport used in PluggableFeatureFactory.- Author:
- Shing Wai Chan
-
-
Field Summary
Fields Modifier and Type Field Description protected static Logger
_logger
static String
SEC_SSL_LOGGER
static String
SHARED_LOGMESSAGE_RESOURCE
-
Fields inherited from class com.sun.enterprise.server.pluggable.SecuritySupport
additionalKeyStoreProp, additionalTrustStoreProp, KEYSTORE_PASS_PROP, KEYSTORE_TYPE_PROP, keyStoreProp, TRUSTSTORE_PASS_PROP, TRUSTSTORE_TYPE_PROP, trustStoreProp
-
-
Constructor Summary
Constructors Modifier Constructor Description SecuritySupportImpl()
protected
SecuritySupportImpl(boolean init)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
checkPermission(String key)
Check permission for the given key.KeyManager[]
getKeyManagers(String algorithm)
KeyStore
getKeyStore(String token)
KeyStore[]
getKeyStores()
This method returns an array of keystores containing keys and certificates.PrivateKey
getPrivateKeyForAlias(String alias, int keystoreIndex)
Gets the PrivateKey for specified alias from the corresponding keystore indicated by the index.String[]
getTokenNames()
This method returns an array of token names in order corresponding to array of keystores.TrustManager[]
getTrustManagers(String algorithm)
KeyStore
getTrustStore(String token)
KeyStore[]
getTrustStores()
This method returns an array of truststores containing certificates.boolean
isACC()
boolean
isNotServerORACC()
KeyStore
loadNullStore(String type, int index)
protected static void
loadStores(String tokenName, Provider provider, String keyStoreFile, char[] keyStorePass, String keyStoreType, String trustStoreFile, char[] trustStorePass, String trustStoreType)
This method will load keystore and truststore and add into corresponding list.void
reset()
Resets the security instance by effectively re-initializing it.void
synchronizeKeyFile(Object configContext, String fileRealmName)
TODO:V3:Cluster ConfigContext is no longer present so find out what this needs to beboolean
verifyMasterPassword(char[] masterPass)
-
Methods inherited from class com.sun.enterprise.server.pluggable.SecuritySupport
getDefaultInstance
-
-
-
-
Field Detail
-
SHARED_LOGMESSAGE_RESOURCE
public static final String SHARED_LOGMESSAGE_RESOURCE
- See Also:
- Constant Field Values
-
SEC_SSL_LOGGER
public static final String SEC_SSL_LOGGER
- See Also:
- Constant Field Values
-
_logger
protected static final Logger _logger
-
-
Method Detail
-
getKeyStores
public KeyStore[] getKeyStores()
This method returns an array of keystores containing keys and certificates.- Specified by:
getKeyStores
in classSecuritySupport
-
getTrustStores
public KeyStore[] getTrustStores()
This method returns an array of truststores containing certificates.- Specified by:
getTrustStores
in classSecuritySupport
-
getTokenNames
public String[] getTokenNames()
This method returns an array of token names in order corresponding to array of keystores.- Specified by:
getTokenNames
in classSecuritySupport
-
getKeyStore
public KeyStore getKeyStore(String token)
- Specified by:
getKeyStore
in classSecuritySupport
- Parameters:
token
-- Returns:
- a keystore
-
getTrustStore
public KeyStore getTrustStore(String token)
- Specified by:
getTrustStore
in classSecuritySupport
- Parameters:
token
-- Returns:
- a truststore
-
reset
public void reset()
Description copied from class:SecuritySupport
Resets the security instance by effectively re-initializing it.This means the default keystores and truststores will be reloaded from their default locations (which may be configured by system properties, such as with the default SecuritySupport instance).
- Overrides:
reset
in classSecuritySupport
-
loadNullStore
public KeyStore loadNullStore(String type, int index) throws KeyStoreException, IOException, NoSuchAlgorithmException, CertificateException
- Specified by:
loadNullStore
in classSecuritySupport
- Returns:
- load a null keystore of given type.
- Throws:
KeyStoreException
IOException
NoSuchAlgorithmException
CertificateException
-
getKeyManagers
public KeyManager[] getKeyManagers(String algorithm) throws IOException, KeyStoreException, NoSuchAlgorithmException, UnrecoverableKeyException
- Specified by:
getKeyManagers
in classSecuritySupport
- Returns:
- KeyManagers for the specified algorithm.
- Throws:
IOException
KeyStoreException
NoSuchAlgorithmException
UnrecoverableKeyException
-
getTrustManagers
public TrustManager[] getTrustManagers(String algorithm) throws IOException, KeyStoreException, NoSuchAlgorithmException
- Specified by:
getTrustManagers
in classSecuritySupport
- Returns:
- TrustManagers for the specified algorithm.
- Throws:
IOException
KeyStoreException
NoSuchAlgorithmException
-
verifyMasterPassword
public boolean verifyMasterPassword(char[] masterPass)
- Specified by:
verifyMasterPassword
in classSecuritySupport
- Returns:
- result whether the given master password is correct.
-
synchronizeKeyFile
public void synchronizeKeyFile(Object configContext, String fileRealmName) throws Exception
Description copied from class:SecuritySupport
TODO:V3:Cluster ConfigContext is no longer present so find out what this needs to be- Specified by:
synchronizeKeyFile
in classSecuritySupport
- Throws:
Exception
-
getPrivateKeyForAlias
public PrivateKey getPrivateKeyForAlias(String alias, int keystoreIndex) throws KeyStoreException, NoSuchAlgorithmException, UnrecoverableKeyException
Description copied from class:SecuritySupport
Gets the PrivateKey for specified alias from the corresponding keystore indicated by the index.- Specified by:
getPrivateKeyForAlias
in classSecuritySupport
- Parameters:
alias
- Alias for which the PrivateKey is desired.keystoreIndex
- Index of the keystore.- Returns:
- Throws:
KeyStoreException
NoSuchAlgorithmException
UnrecoverableKeyException
-
checkPermission
public void checkPermission(String key)
Description copied from class:SecuritySupport
Check permission for the given key.- Specified by:
checkPermission
in classSecuritySupport
-
isACC
public boolean isACC()
-
isNotServerORACC
public boolean isNotServerORACC()
-
loadStores
protected static void loadStores(String tokenName, Provider provider, String keyStoreFile, char[] keyStorePass, String keyStoreType, String trustStoreFile, char[] trustStorePass, String trustStoreType)
This method will load keystore and truststore and add into corresponding list.- Parameters:
tokenName
-provider
-keyStorePass
-keyStoreFile
-keyStoreType
-trustStorePass
-trustStoreFile
-trustStoreType
-
-
-