Platform SDK Java 8.5 API Reference

com.genesyslab.platform.commons.connection.tls
Class AliasKeyManager

java.lang.Object
  extended by javax.net.ssl.X509ExtendedKeyManager
      extended by com.genesyslab.platform.commons.connection.tls.AliasKeyManager
All Implemented Interfaces:
javax.net.ssl.KeyManager, javax.net.ssl.X509KeyManager

public class AliasKeyManager
extends javax.net.ssl.X509ExtendedKeyManager

Convenience implementation of X509ExtendedKeyManager that allows to specify alias of key store entry that will be used as a party credentials. Uses only one specified KeyStore entry unlike built-in KeyManager that will use all available entries.


Constructor Summary
AliasKeyManager(java.security.KeyStore keyStore, java.lang.String alias)
          A safer constructor.
AliasKeyManager(java.security.KeyStore keyStore, java.lang.String alias, char[] password)
          Allows password be passed directly.
 
Method Summary
 java.lang.String chooseClientAlias(java.lang.String[] strings, java.security.Principal[] principals, java.net.Socket socket)
           
 java.lang.String chooseEngineClientAlias(java.lang.String[] strings, java.security.Principal[] principals, javax.net.ssl.SSLEngine sslEngine)
           
 java.lang.String chooseEngineServerAlias(java.lang.String s, java.security.Principal[] principals, javax.net.ssl.SSLEngine sslEngine)
           
 java.lang.String chooseServerAlias(java.lang.String s, java.security.Principal[] principals, java.net.Socket socket)
           
 java.security.cert.X509Certificate[] getCertificateChain(java.lang.String s)
           
 java.lang.String[] getClientAliases(java.lang.String s, java.security.Principal[] principals)
           
 java.security.PrivateKey getPrivateKey(java.lang.String s)
           
 java.lang.String[] getServerAliases(java.lang.String s, java.security.Principal[] principals)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AliasKeyManager

public AliasKeyManager(java.security.KeyStore keyStore,
                       java.lang.String alias,
                       char[] password)
Allows password be passed directly. It is not safe since password will be stored as instance variable. Whenever possible, do not use this constructor, rather use CallbackHandler to provide KeyStore passwords.

Parameters:
keyStore - KeyStore instance from which to take credentials
alias - Alias of KeyStore entry to be used
password - Password for the KeyStore

AliasKeyManager

public AliasKeyManager(java.security.KeyStore keyStore,
                       java.lang.String alias)
A safer constructor. Please prefer this one.

Parameters:
keyStore - KeyStore instance from which to take credentials
alias - Alias of KeyStore entry to be used
Method Detail

getClientAliases

public java.lang.String[] getClientAliases(java.lang.String s,
                                           java.security.Principal[] principals)

chooseClientAlias

public java.lang.String chooseClientAlias(java.lang.String[] strings,
                                          java.security.Principal[] principals,
                                          java.net.Socket socket)

getServerAliases

public java.lang.String[] getServerAliases(java.lang.String s,
                                           java.security.Principal[] principals)

chooseServerAlias

public java.lang.String chooseServerAlias(java.lang.String s,
                                          java.security.Principal[] principals,
                                          java.net.Socket socket)

getCertificateChain

public java.security.cert.X509Certificate[] getCertificateChain(java.lang.String s)

getPrivateKey

public java.security.PrivateKey getPrivateKey(java.lang.String s)

chooseEngineClientAlias

public java.lang.String chooseEngineClientAlias(java.lang.String[] strings,
                                                java.security.Principal[] principals,
                                                javax.net.ssl.SSLEngine sslEngine)
Overrides:
chooseEngineClientAlias in class javax.net.ssl.X509ExtendedKeyManager

chooseEngineServerAlias

public java.lang.String chooseEngineServerAlias(java.lang.String s,
                                                java.security.Principal[] principals,
                                                javax.net.ssl.SSLEngine sslEngine)
Overrides:
chooseEngineServerAlias in class javax.net.ssl.X509ExtendedKeyManager

Platform SDK Java 8.5 API Reference

Send comments on this topicTechpubs.webadmin@genesys.com.
Document version: 8.5.302.00
Copyright © 2006–2017 Genesys Telecommunications Laboratories, Inc. All rights reserved.