Package org.apache.tomcat.util.net.jsse
Class JSSEKeyManager
- java.lang.Object
-
- javax.net.ssl.X509ExtendedKeyManager
-
- org.apache.tomcat.util.net.jsse.JSSEKeyManager
-
- All Implemented Interfaces:
javax.net.ssl.KeyManager
,javax.net.ssl.X509KeyManager
public final class JSSEKeyManager extends javax.net.ssl.X509ExtendedKeyManager
X509KeyManager which allows selection of a specific key pair and certificate chain (identified by their keystore alias name) to be used by the server to authenticate itself to SSL clients.- Author:
- Jan Luehe
-
-
Constructor Summary
Constructors Constructor Description JSSEKeyManager(javax.net.ssl.X509KeyManager mgr, java.lang.String serverKeyAlias)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.String
chooseClientAlias(java.lang.String[] keyType, java.security.Principal[] issuers, java.net.Socket socket)
java.lang.String
chooseEngineClientAlias(java.lang.String[] keyType, java.security.Principal[] issuers, javax.net.ssl.SSLEngine engine)
java.lang.String
chooseEngineServerAlias(java.lang.String keyType, java.security.Principal[] issuers, javax.net.ssl.SSLEngine engine)
Returns the server key alias that was provided in the constructor or the result fromX509ExtendedKeyManager.chooseEngineServerAlias(String, Principal[], SSLEngine)
for the delegate if no alias is specified.java.lang.String
chooseServerAlias(java.lang.String keyType, java.security.Principal[] issuers, java.net.Socket socket)
Returns the server key alias that was provided in the constructor or the result fromX509KeyManager.chooseServerAlias(String, Principal[], Socket)
for the delegate if no alias is specified.java.security.cert.X509Certificate[]
getCertificateChain(java.lang.String alias)
java.lang.String[]
getClientAliases(java.lang.String keyType, java.security.Principal[] issuers)
java.security.PrivateKey
getPrivateKey(java.lang.String alias)
java.lang.String[]
getServerAliases(java.lang.String keyType, java.security.Principal[] issuers)
-
-
-
Method Detail
-
chooseServerAlias
public java.lang.String chooseServerAlias(java.lang.String keyType, java.security.Principal[] issuers, java.net.Socket socket)
Returns the server key alias that was provided in the constructor or the result fromX509KeyManager.chooseServerAlias(String, Principal[], Socket)
for the delegate if no alias is specified.
-
chooseEngineServerAlias
public java.lang.String chooseEngineServerAlias(java.lang.String keyType, java.security.Principal[] issuers, javax.net.ssl.SSLEngine engine)
Returns the server key alias that was provided in the constructor or the result fromX509ExtendedKeyManager.chooseEngineServerAlias(String, Principal[], SSLEngine)
for the delegate if no alias is specified.- Overrides:
chooseEngineServerAlias
in classjavax.net.ssl.X509ExtendedKeyManager
-
chooseClientAlias
public java.lang.String chooseClientAlias(java.lang.String[] keyType, java.security.Principal[] issuers, java.net.Socket socket)
-
getCertificateChain
public java.security.cert.X509Certificate[] getCertificateChain(java.lang.String alias)
-
getClientAliases
public java.lang.String[] getClientAliases(java.lang.String keyType, java.security.Principal[] issuers)
-
getServerAliases
public java.lang.String[] getServerAliases(java.lang.String keyType, java.security.Principal[] issuers)
-
getPrivateKey
public java.security.PrivateKey getPrivateKey(java.lang.String alias)
-
chooseEngineClientAlias
public java.lang.String chooseEngineClientAlias(java.lang.String[] keyType, java.security.Principal[] issuers, javax.net.ssl.SSLEngine engine)
- Overrides:
chooseEngineClientAlias
in classjavax.net.ssl.X509ExtendedKeyManager
-
-