IT Registry CI and Relationship Connector

You can use the IT registry Ci and Relationship Connector to add, update, delete, search or iterate CIs (Configuration Items) and the Relationships between them.

Note: This component is deprecated and will be removed in a future version of IBM® Security Directory Integrator.

For performing all listed operations, this Connector works directly with the IT Registry database. By using the Artifact Type parameter in the configuration panel of the Connector, you can specify whether its operation will be performed on Configuration Items or Relationships. Furthermore, you do not need to know the exact name of the artifact's class, and can directly discover the ones supported by the CDM (by pressing the Select… button in the configuration panel).

As with the IdML CI and Relationship Connector, the CDM meta-data can be retrieved from the local jar file or by connecting to a remote IT Registry system. You can choose between these options in the Advanced section of the Connector’s configuration panel. Other usability features are the ability to test the connection to the remote IT Registry system (if it is being used). For the IT Registry case, the user can also provide information how to connect to IT Registry (for example, JDBC URL, Driver, username and password). If these fields are left blank the default values specified in the etc/it_registry.properties file will be used.

The selected CDM source also affects what attributes are displayed when querying the schema of the Output Map and Input Map of the Connector. For instance, if the IT Registry CDM is used, when listing a CI’s attributes, you will get not only the specific attributes of its class (as is when the JAR meta-data is used), but also those of its parent classes. This of course leads to a bit slower response than when the JAR CDM is used. This is most notable when listing the Relationship types in the Connector’s configuration panel. With the IT Registry CDM, you will be able to see additional information, specifying which classes of CIs can act as sources and which as targets of the chosen Relationship. This can be very useful if you are unaware of the restrictions for the needed Relationship, but is a fairly slow operation which requires much more time than if the JAR CDM is used (then only the relationship types will be listed, without the class restrictions).

As with the IdML Components, when querying the schema of the Connector, all attributes are listed. To determine the minimum subset that has to be supplied, validate the Output Map of the Connector. For more details, see Design time naming rules validation.

This Connector accepts a Book Name parameter, and will look up a different book, depending on its value. The name of the used book can also be overridden at runtime by the $itRegistryBookName attribute.

When the IT registry Ci and Relationship Connector is in CallReply mode, it is capable of registering/modifying both Configuration Items and Relationships along with their attributes. However, when users register CIs they should provide only identifying attributes, as IT registry does not support non-identifying ones in its current release.

The Connector supports registration of the abstract resources. The resources are similar to regular CIs, but from class type process.AbstractResource. In addition, the resources do not hold the information for a particular item, but rather a reference to another MSS, where this information can be found. When registering such CIs, provide:
  • cdm:ExternalSystemName and cdm:ExternalIdentity - to link to the other MSS
  • cdm:SourceToken - to uniquely identify the CI in the realm of the MSS

For example, when both TADDM and TBSM receive information for several Computer Systems, TADDM holds all the available details, and TBSM keeps only the required attributes. Therefore, if TBSM decides to register a relationship involving one of the Computer Systems in IT registry, it will not satisfy the required naming rules and the operation fails. In this case, the TBSM can choose to register the item as an abstract resource. TBSM provides details only for another system that knows of it and the relationship is registered in IT registry. Finally, when TADDM reads that relationship, it detects that one of its CIs is an abstract resource, and recognize itself as the MSS, where details can be found. The TADDM can see the CI up and stores its relationship in a consistent manner.

For working properly in CallReply mode, this Connector depends upon the Init IT registry FC for details about the operation it should perform. This data is accessed through a shared book and includes a flag determining whether the Connector should perform a Refresh operation and a timestamp, used for distinguishing which artifacts should be "refreshed" and which not. See section Open IdML Function Component for details on the Refresh operation.

For this mode, an important parameter which is provided in the Connector’s Output Map is the $operation attribute. It determines what operation will be performed with the specified CI/Relationship, when it is registered to the IT Registry database. It can be either added to the IT Registry database (the CREATE operation), updated (MODIFY), or removed (DELETE). These values – CREATE, MODIFY and DELETE (case insensitive) can be set in the $operation attribute. Note that if the used book is opened as a Refresh one (see the Init IT Registry Function Component for information) only the CREATE operation is supported and passing any other value will cause an Exception. If no value is specified for the $operation attribute the CREATE value will be used by default.

The other option for setting the IT Registry operation is to pass a delta enabled work entry to the Connector. Since the IT Registry Ci and Relationship Connector is "delta aware", it will interpret the delta operation set to the entry and map its value to the IdML operations. The mapping is fairly straightforward:

Table 1. Delta codes to IdML Operations mapping
Delta operation IdML operation
ADD (Entry.OP_ADD) CREATE
MODIFY (Entry.OP_MOD) MODIFY
DELETE (Entry.OP_DEL) DELETE

Keep in mind that the provided delta operation will ALWAYS override the value of the $operation attribute.

Note: Due to limitations of the current version of the IT Registry, the UPDATE operation is not supported by the IT Registry Ci and Relationship Connector. If you try to provide it, an exception will be thrown.

When you query the schema of the Output Map of this Connector, the attributes of the chosen CI/Relationship class will be listed.

Querying the schema of a Relationship using the IT Registry Ci and Relationship Connector will return only two attributes:
  • source - this is the GUID of the Managed Element that is the source of the Relationship
  • target - this is the GUID of the CI that is the target of the Relationship
If any of these attributes is not provided, an Exception will be thrown.

To delete a Configuration Item, a set of identifying attributes must be passed to this Connector along with a DELETE value for the $operation attribute. If the Configuration Item is owned by several ManagementSoftwareSystem-s, it will not be deleted from the database. Instead, only the associations between the CI and the ManagementSoftwareSystem will be removed, thus releasing it from the MSS context. Similarly, to release/delete a Relationship for a specified MSS, the MSS's GUID and the GUIDs of the source and target CIs are required. The $classType attribute permits changing the type of the created Configuration Item/ Relationship at runtime.

To facilitate reading of CIs and Relationships, Iterator mode is provided. When the IT registry Ci and Relationship Connector is in this mode, it returns Configuration Items based on three separate criteria:
  • Attribute Filter – a set of key-value pairs, specifying a filter for limiting the returned CIs. Each pair represents a CDM attribute and its required value. Thus, only CIs which have these attributes and their values will be returned by the Connector. If the filter is empty, all CIs will be fetched. The key-value pairs should be separated by commas and should use the '=' assignment operator. For example: cdm:Model=T61p, cdm:Manufacturer=IBM, cdm:Fqdn=www.ibm.com.
  • Date Filter – a text field expecting a valid date in short format (for example, for US local , it should be MM/DD/YY). An empty Date Filter will throw error.
    Note: Either the Attribute Filter or Date Filter can be used by a single Connector. By default the Attribute Filter is enabled, but you can switch to Date Filter by checking the Enable Date Filter option.
  • MSS Name – a text field accepting the name of an MSS (or a combination of its hostname, manufacturer and product name). By default it is left blank, meaning that all Configuration Items and Relationships which match the other filtering criteria will be returned, without checking the MSS-s they belong to. However, if an MSS name is provided in this field, only artifacts of that Management Software System will be returned. Instead of entering the MSS name themselves, users can list all MSSs present in the IT registry database (by pressing the Get MSS Name button) and directly select the needed one.
    Note: This parameter can be used independently of the Attribute Filter and Date Filter.
  • isDeleted - returns the CI deleted, based on classType or Date Filter.
  • Scope - implies that if you have to return only the class or its sub classes too.

Lookup mode can be used to return a Configuration Item or Relationship with all of its identifying attributes as stored in the IT Registry database. The search is performed using the conditions provided in the Link criteria of the Connector, If they are not specific enough, multiple Configuration Items can be returned. In this case, you should enable the On Multiple Entries hook and add some custom logic for handling the situation.

When specifying the a complex Link Criteria, bear in mind to use only AND logical operations between the conditions and to rely only on the EQUALS operator (for example, cdm:Model=T61p AND cdm:Manufacturer=IBM is a valid criteria). As in Iterator mode, you can further limit the returned CIs by providing a value for the MSS Name filter.

When the Connector is working in Lookup or Iterator mode, the $classType attribute contains the type of the currently read Configuration Item or Relationship. When reading data from IT registry, all Items or Relationships are iterated. This is achieved by leaving the Class Type field in the Configuration Editor empty in either Iterator or Lookup mode. This feature can be used to iterate all Configuration Items in the IT registry database (for example, bulk export), or to perform a search over all the Items/ Relationships, which returns relationships with a specific source Guid.