javax.net.ssl

Interface X509KeyManager

All Superinterfaces:
KeyManager

public interface X509KeyManager
extends KeyManager

A key manager for X.509 certificates and their associated private keys.

Method Summary

String
chooseClientAlias(String[] keyTypes, Principal[] issuers, Socket socket)
Choose an alias for client-side authentication.
String
chooseServerAlias(String keyType, Principal[] issuers, Socket socket)
Choose an alias for server-side authentication.
X509Certificate[]
getCertificateChain(String alias)
Gets the X.509 certificate chain associated with the given alias.
String[]
getClientAliases(String keyType, Principal[] issuers)
Returns all client aliases that support the given key type.
PrivateKey
getPrivateKey(String alias)
Gets the private key associated with the given alias.
String[]
getServerAliases(String keyType, Principal[] issuers)
Returns all server aliases that support the given key type.

Method Details

chooseClientAlias

public String chooseClientAlias(String[] keyTypes,
                                Principal[] issuers,
                                Socket socket)
Choose an alias for client-side authentication.
Parameters:
keyTypes - A list of acceptable key types.
issuers - A list of acceptable certificate issuers.
socket - The connecting socket.
Returns:
The chosen alias.

chooseServerAlias

public String chooseServerAlias(String keyType,
                                Principal[] issuers,
                                Socket socket)
Choose an alias for server-side authentication.
Parameters:
keyType - The desired certificate type.
issuers - A list of acceptable certificate issuers.
socket - The connecting socket.
Returns:
The chosen alias.

getCertificateChain

public X509Certificate[] getCertificateChain(String alias)
Gets the X.509 certificate chain associated with the given alias.
Parameters:
alias - The alias.
Returns:
The certificate chain.

getClientAliases

public String[] getClientAliases(String keyType,
                                 Principal[] issuers)
Returns all client aliases that support the given key type.
Parameters:
keyType - The desired key type.
issuers - A list of acceptable certificate issuers.
Returns:
The (possibly empty) list of aliases.

getPrivateKey

public PrivateKey getPrivateKey(String alias)
Gets the private key associated with the given alias.
Parameters:
alias - The alias.
Returns:
The private key.

getServerAliases

public String[] getServerAliases(String keyType,
                                 Principal[] issuers)
Returns all server aliases that support the given key type.
Parameters:
keyType - The desired key type.
issuers - A list of acceptable certificate issuers.
Returns:
The (possibly empty) list of aliases.