com.raritantechnologies.jcifs
Class JCIFSSecurityManager

java.lang.Object
  extended bycom.raritantechnologies.searchApp.SecurityManager
      extended bycom.raritantechnologies.searchApp.PropertiesSecurityManager
          extended bycom.raritantechnologies.jcifs.JCIFSSecurityManager
All Implemented Interfaces:
ISecurityManager

public class JCIFSSecurityManager
extends PropertiesSecurityManager
implements ISecurityManager

Implementation of ISecurityManager that uses a JCIFS (Samba) Session to authenticate and authorize user access credentials.

XML Configuration Template:
   <SecurityManager class="com.raritantechnologies.jcifs.JCIFSSecurityManager"
                       NTLMDomain="[ name of NTLM domain that represents the Security domain ]"
                       useCache="[ true|false(default) - if true, NTLMPasswordAuthentication is cached in the Session ]" />
 

Developed by Raritan Technologies Inc..

Author:
Ted Sullivan

Field Summary
 
Fields inherited from class com.raritantechnologies.searchApp.PropertiesSecurityManager
alternateLoginName, publicAccessComparator, secureAccessField
 
Fields inherited from class com.raritantechnologies.searchApp.SecurityManager
defaultIsPublic
 
Constructor Summary
JCIFSSecurityManager()
           
 
Method Summary
 boolean canAccess(ILoginInfo userInfo, java.lang.String uri, boolean useDefault)
          Can a user access a particular URI?
 IResult filterResult(IResult originalResult, ILoginInfo userInfo)
          Provide field level security for an IResult
 SourceLoginInfo[] getAvailableSources(ILoginInfo userInfo)
          Returns a list of available search sources for the user.
 SourceLoginInfo getSourceLogin(ILoginInfo userInfo, java.lang.String sourceName, SecurityModel secModel)
          Returns source login info for a given user / source
 ILoginInfo getSourceLoginInfo(ILoginInfo userInfo, java.lang.String sourceName, SecurityModel secModel)
          returns valid source LoginInfo for the User or null if fails.
 void initialize(org.w3c.dom.Element elem)
           
 void initialize(java.util.Map params)
           
 boolean validate(ILoginInfo loginInfo)
          Validates the loginInfo - may add group information etc to the loginInfo object.
 
Methods inherited from class com.raritantechnologies.searchApp.PropertiesSecurityManager
getPassword, getUser, getUserName, isPublic, registerUser, removeUser, setStreamFactory
 
Methods inherited from class com.raritantechnologies.searchApp.SecurityManager
getCipherInputStream, getCipherOutputStream, getFullTextIndexKey, getStoredCertificate, getStoredKey, 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
getCipherInputStream, getCipherOutputStream, getStoredCertificate, getStoredKey, getUser, isPublic, registerUser, removeUser
 

Constructor Detail

JCIFSSecurityManager

public JCIFSSecurityManager()
Method Detail

initialize

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

initialize

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

validate

public boolean validate(ILoginInfo loginInfo)
Validates the loginInfo - may add group information etc to the loginInfo object.

Specified by:
validate in interface ISecurityManager
Overrides:
validate in class PropertiesSecurityManager

canAccess

public boolean canAccess(ILoginInfo userInfo,
                         java.lang.String uri,
                         boolean useDefault)
Description copied from interface: ISecurityManager
Can a user access a particular URI?

Specified by:
canAccess in interface ISecurityManager
Overrides:
canAccess in class SecurityManager

filterResult

public IResult filterResult(IResult originalResult,
                            ILoginInfo userInfo)
Description copied from interface: ISecurityManager
Provide field level security for an IResult

Specified by:
filterResult in interface ISecurityManager
Overrides:
filterResult in class SecurityManager

getAvailableSources

public SourceLoginInfo[] getAvailableSources(ILoginInfo userInfo)
Description copied from interface: ISecurityManager
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
Overrides:
getAvailableSources in class PropertiesSecurityManager

getSourceLogin

public SourceLoginInfo getSourceLogin(ILoginInfo userInfo,
                                      java.lang.String sourceName,
                                      SecurityModel secModel)
Description copied from interface: ISecurityManager
Returns source login info for a given user / source

Specified by:
getSourceLogin in interface ISecurityManager
Overrides:
getSourceLogin in class PropertiesSecurityManager

getSourceLoginInfo

public ILoginInfo getSourceLoginInfo(ILoginInfo userInfo,
                                     java.lang.String sourceName,
                                     SecurityModel secModel)
Description copied from interface: ISecurityManager
returns valid source LoginInfo for the User or null if fails.

Specified by:
getSourceLoginInfo in interface ISecurityManager
Overrides:
getSourceLoginInfo in class PropertiesSecurityManager