com.ibm.di.connector.tam
Class TAMConnector

java.lang.Object
  extended by com.ibm.di.connector.Connector
      extended by com.ibm.di.connector.tam.TAMConnector
All Implemented Interfaces:
ConnectorInterface, VersionInfoInterface

public class TAMConnector
extends Connector
implements ConnectorInterface

The TAM Connector.

The connector enables external applications, using TDI, to access IBM Tivoli Access Manager (TAM) It supports the following TDI ConnectorModes: Iterator AddOnly Update Delete Lookup The connector supports design time schema query via querySchema(java.lang.Object).

The configuration parameters of the connector are described below. TAM ID
TAM Administrative ID.

TAM Password
Password for TAM Administrative logon ID.

Domain
The TAM Domain.

TAM Program Name
TAM Program Name specified in the SvrSslCfg configuration utility.

�TAM Configuration File
TAM Configuration File created by the SvrSslCfg configuration utility.

Entry Type
Specifies the object type to work with. The supported types are: User Group Policy SSO Credential SSO Resource SSO Resource Group

Import Users or Groups from Registry
If checked, Users or Groups will be imported from the registry.

Import Users or Groups from Registry
If checked, Users or Groups/Domains will be imported from the registry.


Field Summary
static String COMPONENT_NAME
           
static String DEFAULT_DOMAIN
           
static String PARAM_CONFIG_URL
           
static String PARAM_DELETE_REG
           
static String PARAM_DOMAIN
           
static String PARAM_ENTRY_TYPE
           
static String PARAM_FILTER
           
static String PARAM_IMPORT_CREATE
           
static String PARAM_PASSWORD
           
static String PARAM_PROG_NAME
           
static String PARAM_USER_NAME
           
 
Fields inherited from class com.ibm.di.connector.Connector
ALL_MODES, myLog, PROPERTY_MESSAGE, PROPERTY_READER, PROPERTY_WRITER
 
Constructor Summary
TAMConnector()
          Default Constructor
 
Method Summary
 void deleteEntry(Entry entry, SearchCriteria searchcriteria)
          The old Entry is now redundant so shoehorn the original deleteEntry into the new code which just uses searchcriteria with no loss of functionality.
 void deleteEntry(SearchCriteria searchcriteria)
          Deletes the entry determined by the SearchCriteria if it exists
 Entry findEntry(SearchCriteria searchcriteria)
          Using the provided search criteria and based on the configured Entry Type, attempts to find the object in TAM.
 Entry getNextEntry()
          Using the list of the configured Entry Type, returns the next available entry on the list.
 String getVersion()
          Returns current version of the Connector.
 void initialize(Object arg0)
          This method is called once to initialize all the required internal members.
 void modEntry(Entry changes, SearchCriteria searchcriteria)
          Using the provided changes and based on the configured Entry Type, attempts to modify the specified object in TAM.
 void modEntry(Entry changes, SearchCriteria searchcriteria, Entry old)
          The old Entry is now redundant so shoehorn the original modEntry into the new code which just uses searchcriteria with no loss of functionality.
 void putEntry(Entry entry)
          Using the provided entry and based on the configured Entry Type, attempts to create the specified object in TAM.
 Object querySchema(Object obj)
          Based on the configured Entry Type returns a list of TDI entries that define the schema for attribute mapping.
 Vector queryTAMDomains()
          Used to query TAM for the set of configured Domains.
 void selectEntries()
          Prepares a list of the required Entry Type to iterate over.
 void setImportReg(boolean importReg)
          Available for use by TDI Assembly Line.
 void terminate()
          Shuts down the Connection to the TAM Server using PDAdmin.shutdown().
 
Methods inherited from class com.ibm.di.connector.Connector
addFindEntry, allModes, clearFindEntries, debug, debugMode, findEntry, getBoolean, getClassInstance, getConfiguration, getContext, getFindEntryCount, getFirstFindEntry, getLog, getMaxDuplicateEntries, getModes, getModes, getName, getNextClient, getNextFindEntry, getParam, getParser, getProperty, getPushbackEntry, getRawConnectorConfiguration, getRSInterface, getUI, hasConfigValue, hasParser, initParser, isDeltaSupported, isExceptionFatal, isIOException, logError, logmsg, pushback, queryOperations, queryReply, queryTables, reconnect, reconnect, registerScriptBeans, replyEntry, setConfiguration, setContext, setCurrent, setDebugMode, setLog, setMaxDuplicateEntries, setModes, setModes, setName, setParam, setParser, setProperty, setRSInterface, terminateServer
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.ibm.di.connector.ConnectorInterface
getConfiguration, getContext, getFindEntryCount, getFirstFindEntry, getMaxDuplicateEntries, getName, getNextClient, getNextFindEntry, getParam, getPushbackEntry, getRawConnectorConfiguration, isDeltaSupported, isExceptionFatal, isIOException, pushback, queryOperations, queryReply, reconnect, registerScriptBeans, replyEntry, setConfiguration, setContext, setCurrent, setLog, setMaxDuplicateEntries, setName, setParam, setRSInterface, terminateServer
 

Field Detail

COMPONENT_NAME

public static final String COMPONENT_NAME
See Also:
Constant Field Values

PARAM_PROG_NAME

public static final String PARAM_PROG_NAME
See Also:
Constant Field Values

PARAM_DOMAIN

public static final String PARAM_DOMAIN
See Also:
Constant Field Values

PARAM_USER_NAME

public static final String PARAM_USER_NAME
See Also:
Constant Field Values

PARAM_PASSWORD

public static final String PARAM_PASSWORD
See Also:
Constant Field Values

PARAM_ENTRY_TYPE

public static final String PARAM_ENTRY_TYPE
See Also:
Constant Field Values

PARAM_FILTER

public static final String PARAM_FILTER
See Also:
Constant Field Values

PARAM_CONFIG_URL

public static final String PARAM_CONFIG_URL
See Also:
Constant Field Values

PARAM_IMPORT_CREATE

public static final String PARAM_IMPORT_CREATE
See Also:
Constant Field Values

PARAM_DELETE_REG

public static final String PARAM_DELETE_REG
See Also:
Constant Field Values

DEFAULT_DOMAIN

public static final String DEFAULT_DOMAIN
See Also:
Constant Field Values
Constructor Detail

TAMConnector

public TAMConnector()
Default Constructor

Method Detail

initialize

public void initialize(Object arg0)
                throws TAMConnectorException
This method is called once to initialize all the required internal members.

Specified by:
initialize in interface ConnectorInterface
Overrides:
initialize in class Connector
Parameters:
arg0 - TDI config object. Not used.
Throws:
TAMConnectorException - When an unrecoverable error occurs.

setImportReg

public void setImportReg(boolean importReg)
Available for use by TDI Assembly Line.

Parameters:
importReg - true for IMPORT, false for CREATE

terminate

public void terminate()
               throws Exception
Shuts down the Connection to the TAM Server using PDAdmin.shutdown().

Specified by:
terminate in interface ConnectorInterface
Overrides:
terminate in class Connector
Throws:
Exception - When an unrecoverable error occurs.

selectEntries

public void selectEntries()
                   throws TAMConnectorException
Prepares a list of the required Entry Type to iterate over.

Specified by:
selectEntries in interface ConnectorInterface
Overrides:
selectEntries in class Connector
Throws:
TAMConnectorException - When an unrecoverable error occurs.

getNextEntry

public Entry getNextEntry()
                   throws TAMConnectorException
Using the list of the configured Entry Type, returns the next available entry on the list. When either the end of the list has been passed, or the list is empty, returns NULL.

Specified by:
getNextEntry in interface ConnectorInterface
Overrides:
getNextEntry in class Connector
Returns:
The next available entry, or NULL.
Throws:
TAMConnectorException - When an unrecoverable error occurs.
See Also:
ConnectorInterface.selectEntries()

findEntry

public Entry findEntry(SearchCriteria searchcriteria)
                throws TAMConnectorException
Using the provided search criteria and based on the configured Entry Type, attempts to find the object in TAM. If no object can be found the returns NULL.

Specified by:
findEntry in interface ConnectorInterface
Overrides:
findEntry in class Connector
Parameters:
searchcriteria - - Provides details of the attribute to search with and the search operand.
Returns:
An entry representing the TAM object, else NULL.
Throws:
TAMConnectorException - When an unrecoverable error occurs.

putEntry

public void putEntry(Entry entry)
              throws TAMConnectorException
Using the provided entry and based on the configured Entry Type, attempts to create the specified object in TAM.

Specified by:
putEntry in interface ConnectorInterface
Overrides:
putEntry in class Connector
Parameters:
entry - - A TDI Entry containing the attributes and values to use when creating the required object, of the required Entry Type in TAM.
Throws:
TAMConnectorException - When an unrecoverable error occurs.

modEntry

public void modEntry(Entry changes,
                     SearchCriteria searchcriteria,
                     Entry old)
              throws TAMConnectorException
The old Entry is now redundant so shoehorn the original modEntry into the new code which just uses searchcriteria with no loss of functionality.

Specified by:
modEntry in interface ConnectorInterface
Overrides:
modEntry in class Connector
Parameters:
changes - The entry data
searchcriteria - The search criteria used to locate the entry to be modified
old - The old entry found by the search criteria
Throws:
TAMConnectorException

modEntry

public void modEntry(Entry changes,
                     SearchCriteria searchcriteria)
              throws TAMConnectorException
Using the provided changes and based on the configured Entry Type, attempts to modify the specified object in TAM. It does this with only one instance of the underlying PDObject rather than relying on the Locate() to already have provided an initial instance of the object.

Specified by:
modEntry in interface ConnectorInterface
Overrides:
modEntry in class Connector
Parameters:
changes - - A TDI Entry containing the attributes and values to use when modifying the required object, of the required Entry Type in TAM.
searchcriteria - -
Throws:
TAMConnectorException - When an unrecoverable error occurs.

deleteEntry

public void deleteEntry(Entry entry,
                        SearchCriteria searchcriteria)
                 throws TAMConnectorException
The old Entry is now redundant so shoehorn the original deleteEntry into the new code which just uses searchcriteria with no loss of functionality.

Specified by:
deleteEntry in interface ConnectorInterface
Overrides:
deleteEntry in class Connector
Parameters:
entry - The entry data
searchcriteria - The search criteria used to locate the entry to be deleted
Throws:
TAMConnectorException

deleteEntry

public void deleteEntry(SearchCriteria searchcriteria)
                 throws TAMConnectorException
Deletes the entry determined by the SearchCriteria if it exists

Parameters:
searchcriteria - - Used to provide the unique key to access the PDObject
Throws:
TAMConnectorException - When an unrecoverable error occurs.

querySchema

public Object querySchema(Object obj)
                   throws TAMConnectorException
Based on the configured Entry Type returns a list of TDI entries that define the schema for attribute mapping.

Specified by:
querySchema in interface ConnectorInterface
Overrides:
querySchema in class Connector
Parameters:
obj - - Not used.
Returns:
Vector of TDI Entries that represent the attribute mapping schema.
Throws:
TAMConnectorException - When an unrecoverable error occurs.
See Also:
Entry, Vector

getVersion

public String getVersion()
Returns current version of the Connector.

Specified by:
getVersion in interface VersionInfoInterface
Returns:
String representation of Connector's current version.

queryTAMDomains

public Vector queryTAMDomains()
                       throws TAMConnectorException
Used to query TAM for the set of configured Domains.

Returns:
Vector of PDDomain objects.
Throws:
TAMConnectorException - When an unrecoverable error occurs.