com.raritantechnologies.security
Class DualSecurityManager

java.lang.Object
  extended bycom.raritantechnologies.searchApp.SecurityManager
      extended bycom.raritantechnologies.security.DualSecurityManager
All Implemented Interfaces:
ISecurityManager

public class DualSecurityManager
extends SecurityManager
implements ISecurityManager

Implements a two-stage security process. Validation requires that both security checks succeed.

XML Configuration Template:
  <SecurityManager name="this managers name"
                      class="com.raritantechnologies.security.DualSecurityManager" 
                      firstManager="[name of first SecurityManager]"
                      secondManager="[name of second manager]" />

 

Developed by Raritan Technologies .

Author:
Ted Sullivan

Field Summary
 
Fields inherited from class com.raritantechnologies.searchApp.SecurityManager
defaultIsPublic
 
Constructor Summary
DualSecurityManager()
           
 
Method Summary
 SourceLoginInfo[] getAvailableSources(ILoginInfo userInfo)
          Returns a list of available search sources for the user.
 SourceLoginInfo getSourceLogin(ILoginInfo userInfo, java.lang.String sourceName, SecurityModel secMod)
          Returns source login info for a given user / source
 ILoginInfo getSourceLoginInfo(ILoginInfo userInfo, java.lang.String sourceName, SecurityModel secMod)
          returns valid source LoginInfo for the User or null if fails.
 ILoginInfo getUser(java.lang.String sessionID)
           
 void initialize(org.w3c.dom.Element elem)
           
 void initialize(java.util.Map params)
           
 void registerUser(java.lang.String sessionID, ILoginInfo loginInfo)
           
 void removeUser(java.lang.String sessionID)
           
 boolean validate(ILoginInfo user)
          Validates the loginInfo - may add group information etc to the loginInfo object.
 
Methods inherited from class com.raritantechnologies.searchApp.SecurityManager
canAccess, filterResult, getCipherInputStream, getCipherOutputStream, getFullTextIndexKey, getStoredCertificate, getStoredKey, isPublic, setFullTextIndexKey
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.raritantechnologies.searchApp.ISecurityManager
canAccess, filterResult, getCipherInputStream, getCipherOutputStream, getStoredCertificate, getStoredKey, isPublic
 

Constructor Detail

DualSecurityManager

public DualSecurityManager()
Method Detail

validate

public boolean validate(ILoginInfo user)
Description copied from interface: ISecurityManager
Validates the loginInfo - may add group information etc to the loginInfo object.

Specified by:
validate in interface ISecurityManager

registerUser

public void registerUser(java.lang.String sessionID,
                         ILoginInfo loginInfo)
Specified by:
registerUser in interface ISecurityManager

getUser

public ILoginInfo getUser(java.lang.String sessionID)
Specified by:
getUser in interface ISecurityManager

removeUser

public void removeUser(java.lang.String sessionID)
Specified by:
removeUser in interface ISecurityManager

getAvailableSources

public SourceLoginInfo[] getAvailableSources(ILoginInfo userInfo)
Returns a list of available search sources for the user. The returned objects contain security information needed to validate the user against each source.

Specified by:
getAvailableSources in interface ISecurityManager

getSourceLogin

public SourceLoginInfo getSourceLogin(ILoginInfo userInfo,
                                      java.lang.String sourceName,
                                      SecurityModel secMod)
Returns source login info for a given user / source

Specified by:
getSourceLogin in interface ISecurityManager

getSourceLoginInfo

public ILoginInfo getSourceLoginInfo(ILoginInfo userInfo,
                                     java.lang.String sourceName,
                                     SecurityModel secMod)
returns valid source LoginInfo for the User or null if fails.

Specified by:
getSourceLoginInfo in interface ISecurityManager

initialize

public void initialize(java.util.Map params)
Specified by:
initialize in interface ISecurityManager
Overrides:
initialize in class SecurityManager

initialize

public void initialize(org.w3c.dom.Element elem)
Specified by:
initialize in interface ISecurityManager
Overrides:
initialize in class SecurityManager