com.sun.xml.wss.impl.misc
Class DefaultCallbackHandler

java.lang.Object
  extended by com.sun.xml.wss.impl.misc.DefaultCallbackHandler
All Implemented Interfaces:
javax.security.auth.callback.CallbackHandler

public class DefaultCallbackHandler
extends java.lang.Object
implements javax.security.auth.callback.CallbackHandler

A sample implementation of a CallbackHandler.


Nested Class Summary
 class DefaultCallbackHandler.X509CertificateValidatorImpl
           
 
Field Summary
static java.lang.String CERTIFICATE_VALIDATOR
           
static java.lang.String CERTSTORE_CBH
           
static java.lang.String CERTSTORE_CERTSELECTOR
           
static java.lang.String CERTSTORE_CRLSELECTOR
           
static java.lang.String JAAS_KEYSTORE_LOGIN_MODULE
           
static java.lang.String JMAC_CALLBACK_HANDLER
           
static java.lang.String KEY_PASSWORD
           
static java.lang.String KEYSTORE_CBH
           
static java.lang.String KEYSTORE_CERTSELECTOR
           
static java.lang.String KEYSTORE_PASSWORD
           
static java.lang.String KEYSTORE_TYPE
           
static java.lang.String KEYSTORE_URL
           
static java.lang.String KRB5_CREDENTIAL_DELEGATION
           
static java.lang.String KRB5_LOGIN_MODULE
           
static java.lang.String KRB5_SERVICE_PRINCIPAL
           
static java.lang.String MAX_CLOCK_SKEW_PROPERTY
           
static java.lang.String MAX_NONCE_AGE_PROPERTY
           
protected  long maxClockSkewG
           
protected  long maxNonceAge
           
protected  java.lang.String mcs
           
protected  java.lang.String mna
           
static java.lang.String MY_ALIAS
           
static java.lang.String MY_ITERATIONS
           
static java.lang.String MY_PASSWORD
           
static java.lang.String MY_USERNAME
           
static java.lang.String PASSWORD_CBH
           
static java.lang.String PEER_ENTITY_ALIAS
           
static java.lang.String REVOCATION_ENABLED
           
protected  boolean revocationEnabled
           
protected  java.lang.String revocationEnabledAttr
           
static java.lang.String SAML_CBH
           
static java.lang.String SAML_VALIDATOR
           
static java.lang.String SERVICE_ALIAS
           
static java.lang.String STS_ALIAS
           
protected  java.lang.String tfl
           
static java.lang.String TIMESTAMP_FRESHNESS_LIMIT_PROPERTY
           
static java.lang.String TIMESTAMP_VALIDATOR
           
protected  long timestampFreshnessLimitG
           
static java.lang.String TRUSTSTORE_CBH
           
static java.lang.String TRUSTSTORE_CERTSELECTOR
           
static java.lang.String TRUSTSTORE_PASSWORD
           
static java.lang.String TRUSTSTORE_TYPE
           
static java.lang.String TRUSTSTORE_URL
           
static java.lang.String USE_XWSS_CALLBACKS
           
static java.lang.String USERNAME_CBH
           
static java.lang.String USERNAME_VALIDATOR
           
 
Constructor Summary
DefaultCallbackHandler(java.lang.String clientOrServer, java.util.Properties assertions)
           
DefaultCallbackHandler(java.lang.String clientOrServer, java.util.Properties assertions, RealmAuthenticationAdapter adapter)
           
 
Method Summary
 java.security.PrivateKey getPrivateKey(byte[] ski, java.util.Map runtimeProps)
           
 java.security.PrivateKey getPrivateKey(java.lang.String issuerName, java.math.BigInteger serialNumber, java.util.Map runtimeProps)
           
 java.security.PrivateKey getPrivateKey(java.security.cert.X509Certificate certificate, java.util.Map runtimeProps)
           
 java.security.PrivateKey getPrivateKeyForThumbprint(byte[] ski, java.util.Map runtimeProps)
           
 javax.security.auth.Subject getRequesterSubject(java.util.Map context)
           
 SAMLAssertionValidator getSAMLValidator()
           
 void handle(javax.security.auth.callback.Callback[] callbacks)
           
 void validateCreationTime(java.util.Date created, long maxClockSkew, long timestampFreshnessLimit)
           
 void validateExpirationTime(java.util.Date expires, long maxClockSkew, long timestampFreshnessLimit)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

KEYSTORE_URL

public static final java.lang.String KEYSTORE_URL
See Also:
Constant Field Values

KEYSTORE_TYPE

public static final java.lang.String KEYSTORE_TYPE
See Also:
Constant Field Values

KEYSTORE_PASSWORD

public static final java.lang.String KEYSTORE_PASSWORD
See Also:
Constant Field Values

KEY_PASSWORD

public static final java.lang.String KEY_PASSWORD
See Also:
Constant Field Values

MY_ALIAS

public static final java.lang.String MY_ALIAS
See Also:
Constant Field Values

MY_USERNAME

public static final java.lang.String MY_USERNAME
See Also:
Constant Field Values

MY_PASSWORD

public static final java.lang.String MY_PASSWORD
See Also:
Constant Field Values

MY_ITERATIONS

public static final java.lang.String MY_ITERATIONS
See Also:
Constant Field Values

TRUSTSTORE_URL

public static final java.lang.String TRUSTSTORE_URL
See Also:
Constant Field Values

TRUSTSTORE_TYPE

public static final java.lang.String TRUSTSTORE_TYPE
See Also:
Constant Field Values

TRUSTSTORE_PASSWORD

public static final java.lang.String TRUSTSTORE_PASSWORD
See Also:
Constant Field Values

PEER_ENTITY_ALIAS

public static final java.lang.String PEER_ENTITY_ALIAS
See Also:
Constant Field Values

STS_ALIAS

public static final java.lang.String STS_ALIAS
See Also:
Constant Field Values

SERVICE_ALIAS

public static final java.lang.String SERVICE_ALIAS
See Also:
Constant Field Values

USERNAME_CBH

public static final java.lang.String USERNAME_CBH
See Also:
Constant Field Values

PASSWORD_CBH

public static final java.lang.String PASSWORD_CBH
See Also:
Constant Field Values

SAML_CBH

public static final java.lang.String SAML_CBH
See Also:
Constant Field Values

KEYSTORE_CBH

public static final java.lang.String KEYSTORE_CBH
See Also:
Constant Field Values

TRUSTSTORE_CBH

public static final java.lang.String TRUSTSTORE_CBH
See Also:
Constant Field Values

USERNAME_VALIDATOR

public static final java.lang.String USERNAME_VALIDATOR
See Also:
Constant Field Values

SAML_VALIDATOR

public static final java.lang.String SAML_VALIDATOR
See Also:
Constant Field Values

TIMESTAMP_VALIDATOR

public static final java.lang.String TIMESTAMP_VALIDATOR
See Also:
Constant Field Values

CERTIFICATE_VALIDATOR

public static final java.lang.String CERTIFICATE_VALIDATOR
See Also:
Constant Field Values

MAX_CLOCK_SKEW_PROPERTY

public static final java.lang.String MAX_CLOCK_SKEW_PROPERTY
See Also:
Constant Field Values

MAX_NONCE_AGE_PROPERTY

public static final java.lang.String MAX_NONCE_AGE_PROPERTY
See Also:
Constant Field Values

TIMESTAMP_FRESHNESS_LIMIT_PROPERTY

public static final java.lang.String TIMESTAMP_FRESHNESS_LIMIT_PROPERTY
See Also:
Constant Field Values

REVOCATION_ENABLED

public static final java.lang.String REVOCATION_ENABLED
See Also:
Constant Field Values

CERTSTORE_CBH

public static final java.lang.String CERTSTORE_CBH
See Also:
Constant Field Values

CERTSTORE_CERTSELECTOR

public static final java.lang.String CERTSTORE_CERTSELECTOR
See Also:
Constant Field Values

CERTSTORE_CRLSELECTOR

public static final java.lang.String CERTSTORE_CRLSELECTOR
See Also:
Constant Field Values

KEYSTORE_CERTSELECTOR

public static final java.lang.String KEYSTORE_CERTSELECTOR
See Also:
Constant Field Values

TRUSTSTORE_CERTSELECTOR

public static final java.lang.String TRUSTSTORE_CERTSELECTOR
See Also:
Constant Field Values

JMAC_CALLBACK_HANDLER

public static final java.lang.String JMAC_CALLBACK_HANDLER
See Also:
Constant Field Values

KRB5_LOGIN_MODULE

public static final java.lang.String KRB5_LOGIN_MODULE
See Also:
Constant Field Values

KRB5_SERVICE_PRINCIPAL

public static final java.lang.String KRB5_SERVICE_PRINCIPAL
See Also:
Constant Field Values

KRB5_CREDENTIAL_DELEGATION

public static final java.lang.String KRB5_CREDENTIAL_DELEGATION
See Also:
Constant Field Values

USE_XWSS_CALLBACKS

public static final java.lang.String USE_XWSS_CALLBACKS
See Also:
Constant Field Values

JAAS_KEYSTORE_LOGIN_MODULE

public static final java.lang.String JAAS_KEYSTORE_LOGIN_MODULE
See Also:
Constant Field Values

maxClockSkewG

protected long maxClockSkewG

timestampFreshnessLimitG

protected long timestampFreshnessLimitG

maxNonceAge

protected long maxNonceAge

revocationEnabledAttr

protected java.lang.String revocationEnabledAttr

revocationEnabled

protected boolean revocationEnabled

mcs

protected java.lang.String mcs

tfl

protected java.lang.String tfl

mna

protected java.lang.String mna
Constructor Detail

DefaultCallbackHandler

public DefaultCallbackHandler(java.lang.String clientOrServer,
                              java.util.Properties assertions)
                       throws XWSSecurityException
Throws:
XWSSecurityException

DefaultCallbackHandler

public DefaultCallbackHandler(java.lang.String clientOrServer,
                              java.util.Properties assertions,
                              RealmAuthenticationAdapter adapter)
                       throws java.lang.Exception
Throws:
java.lang.Exception
Method Detail

handle

public void handle(javax.security.auth.callback.Callback[] callbacks)
            throws java.io.IOException,
                   javax.security.auth.callback.UnsupportedCallbackException
Specified by:
handle in interface javax.security.auth.callback.CallbackHandler
Parameters:
callbacks -
Throws:
java.io.IOException
javax.security.auth.callback.UnsupportedCallbackException

getPrivateKey

public java.security.PrivateKey getPrivateKey(byte[] ski,
                                              java.util.Map runtimeProps)
                                       throws java.io.IOException
Parameters:
ski -
runtimeProps -
Returns:
Throws:
java.io.IOException

getPrivateKey

public java.security.PrivateKey getPrivateKey(java.lang.String issuerName,
                                              java.math.BigInteger serialNumber,
                                              java.util.Map runtimeProps)
                                       throws java.io.IOException
Parameters:
issuerName -
serialNumber -
runtimeProps -
Returns:
Throws:
java.io.IOException

getPrivateKey

public java.security.PrivateKey getPrivateKey(java.security.cert.X509Certificate certificate,
                                              java.util.Map runtimeProps)
                                       throws java.io.IOException
Parameters:
certificate -
runtimeProps -
Returns:
Throws:
java.io.IOException

validateExpirationTime

public void validateExpirationTime(java.util.Date expires,
                                   long maxClockSkew,
                                   long timestampFreshnessLimit)
                            throws TimestampValidationCallback.TimestampValidationException
Throws:
TimestampValidationCallback.TimestampValidationException

validateCreationTime

public void validateCreationTime(java.util.Date created,
                                 long maxClockSkew,
                                 long timestampFreshnessLimit)
                          throws TimestampValidationCallback.TimestampValidationException
Throws:
TimestampValidationCallback.TimestampValidationException

getPrivateKeyForThumbprint

public java.security.PrivateKey getPrivateKeyForThumbprint(byte[] ski,
                                                           java.util.Map runtimeProps)
                                                    throws java.io.IOException
Parameters:
ski -
runtimeProps -
Returns:
Throws:
java.io.IOException

getRequesterSubject

public javax.security.auth.Subject getRequesterSubject(java.util.Map context)

getSAMLValidator

public SAMLAssertionValidator getSAMLValidator()


Copyright © 2005-2012 Oracle Corporation. All Rights Reserved.