public class CredentialX509KeyManager
extends javax.net.ssl.X509ExtendedKeyManager
KeyManager
implementation which always returns the only key and certificate
which is available in the configured X509Credential
object.
Note that this class could return null in case when server provides
a list of trusted issuers and our credential is not issued by any of them. However
such behavior results in quite cryptic errors from the server side ("null cert chain"),
so we try to authenticate with what we have always.Constructor and Description |
---|
CredentialX509KeyManager(X509Credential credential) |
Modifier and Type | Method and 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) |
java.lang.String |
chooseServerAlias(java.lang.String keyType,
java.security.Principal[] issuers,
java.net.Socket socket) |
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) |
public CredentialX509KeyManager(X509Credential credential)
public java.lang.String chooseClientAlias(java.lang.String[] keyType, java.security.Principal[] issuers, java.net.Socket socket)
public java.lang.String chooseServerAlias(java.lang.String keyType, java.security.Principal[] issuers, java.net.Socket socket)
public java.security.cert.X509Certificate[] getCertificateChain(java.lang.String alias)
public java.lang.String[] getClientAliases(java.lang.String keyType, java.security.Principal[] issuers)
public java.security.PrivateKey getPrivateKey(java.lang.String alias)
public java.lang.String[] getServerAliases(java.lang.String keyType, java.security.Principal[] issuers)
public java.lang.String chooseEngineClientAlias(java.lang.String[] keyType, java.security.Principal[] issuers, javax.net.ssl.SSLEngine engine)
chooseEngineClientAlias
in class javax.net.ssl.X509ExtendedKeyManager
public java.lang.String chooseEngineServerAlias(java.lang.String keyType, java.security.Principal[] issuers, javax.net.ssl.SSLEngine engine)
chooseEngineServerAlias
in class javax.net.ssl.X509ExtendedKeyManager