Class JaasCertificateAuthenticationBroker

  extended by
      extended by
All Implemented Interfaces:
Broker, Region, Service

public class JaasCertificateAuthenticationBroker
extends BrokerFilter

A JAAS Authentication Broker that uses SSL Certificates. This class will provide the JAAS framework with a JaasCertificateCallbackHandler that will grant JAAS access to incoming connections' SSL certificate chains. NOTE: There is a chance that the incoming connection does not have a valid certificate (has null).

Author: (Sepand)

Field Summary
Fields inherited from class
Constructor Summary
JaasCertificateAuthenticationBroker(Broker next, String jaasConfiguration)
          Simple constructor.
Method Summary
 void addConnection(ConnectionContext context, ConnectionInfo info)
          Overridden to allow for authentication based on client certificates.
 void removeConnection(ConnectionContext context, ConnectionInfo info, Throwable error)
          Overriding removeConnection to make sure the security context is cleaned.
Methods inherited from class
acknowledge, addBroker, addConsumer, addDestination, addDestinationInfo, addProducer, addSession, beginTransaction, brokerServiceStarted, commitTransaction, fastProducer, forgetTransaction, gc, getAdaptor, getAdminConnectionContext, getBrokerId, getBrokerName, getBrokerSequenceId, getBrokerService, getClients, getDestinationMap, getDestinations, getDestinations, getDurableDestinations, getExecutor, getPeerBrokerInfos, getPreparedTransactions, getRoot, getScheduler, getTempDataStore, getVmConnectorURI, isExpired, isFaultTolerantConfiguration, isFull, isStopped, messageConsumed, messageDelivered, messageDiscarded, messageExpired, messagePull, networkBridgeStarted, networkBridgeStopped, nowMasterBroker, postProcessDispatch, prepareTransaction, preProcessDispatch, processConsumerControl, processDispatchNotification, removeBroker, removeConsumer, removeDestination, removeDestinationInfo, removeProducer, removeSession, removeSubscription, rollbackTransaction, send, sendToDeadLetterQueue, setAdminConnectionContext, slowConsumer, start, stop
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Detail


public JaasCertificateAuthenticationBroker(Broker next,
                                           String jaasConfiguration)
Simple constructor. Leaves everything to superclass.

next - The Broker that does the actual work for this Filter.
jassConfiguration - The JAAS domain configuration name (refere to JAAS documentation).
Method Detail


public void addConnection(ConnectionContext context,
                          ConnectionInfo info)
                   throws Exception
Overridden to allow for authentication based on client certificates. Connections being added will be authenticated based on their certificate chain and the JAAS module specified through the JAAS framework. NOTE: The security context's username will be set to the first UserPrincipal created by the login module.

Specified by:
addConnection in interface Broker
addConnection in class BrokerFilter
context - The context for the incoming Connection.
info - The ConnectionInfo Command representing the incoming connection.
Exception - TODO


public void removeConnection(ConnectionContext context,
                             ConnectionInfo info,
                             Throwable error)
                      throws Exception
Overriding removeConnection to make sure the security context is cleaned.

Specified by:
removeConnection in interface Broker
removeConnection in class BrokerFilter
context - the environment the operation is being executed under.
error - null if the client requested the disconnect or the error that caused the client to disconnect.
Exception - TODO

Copyright © 2005-2013 The Apache Software Foundation. All Rights Reserved.