Configuration data

An organization (for example, a bank, or a department within a bank) contains many resources that can be involved in message processing (for example, printers and database tables). Each of these resources has one or more attributes (for example, a printer might have the attribute "port", and a database table might have the attribute "schema name").

In FTM SWIFT, you use configuration data to represent such resources. Services use this data to:
  • Determine which physical resources they are to use (for example, whether they are to store data in Table1 or Table2)
  • Control their processing (for example, to determine whether to record data in an audit table, or whether a particular user is to be granted access to certain data or actions)
To specify configuration data in your FTM SWIFT system:
  • For each organization, create an organizational unit.
  • For each FTM SWIFT instance, define the configuration object types that that instance can contain, and the attributes each configuration object type can have. A configuration object type (CT) describes a type of a resource (for example, “printer”, “account”, or “database table”), and the attributes that objects of that type can have. Each attribute is of one of the following types:
    Real
    A real attribute must have a value, for example, port=LPT1 or schema name=DNI.
    Secure
    A secure attribute is a real attribute whose value is not displayed when being entered, and is encrypted before being transported to and stored in the FTM SWIFT database. Examples of such attributes are the cryptographic keys used for local authentication in SWIFTNet Phase 2.
    Pseudo
    A pseudo attribute cannot have a value, and is used to indicate a binary state such as yes/no or on/off. For example, the attribute local might be present for some resources and absent for others, indicating whether the resource is local. Pseudo attributes are especially useful for implementing access rights (for example, read, update, or delete).
    A CT is similar to a type definition in a programming language. Each CT applies to an entire instance.
  • For each organization, define the configuration objects in its corresponding OU. A configuration object (CO) is an instance of a configuration object type (for example, the printer with the name PRT12, or the database table with the name DNI_MWH_BANKA). Each CO has its own name, distinguishing it from the many other COs of a particular CT in an OU.
  • For each CO, specify which attributes it has (each attribute must be one of those defined for the CT of the CO), and for each real attributes, specify a value. Each attribute of a CO maps to a corresponding attribute of the corresponding resource.
In this way, you represent the resources of an organization as COs within an OU. In other words, an OU is a non-physical representation of an organization, its resources, and the attributes of these resources. Figure 1 shows an example of an OU definition.
Figure 1. Configuration objects and how they map to real world objects
               FTM SWIFT Configuration       The Real World

organization:  BANKA                                   BANKA
object type :  printer                                 printer
object      :    Printer1                                Printer1
attribute   :      PrintQueue=PrintQ1                      print queue for Printer1
attribute   :      print                                   authorization to use Printer1
object      :    Printer2                                Printer2
attribute   :      PrintQueue=PrintQ2                      print queue for Printer2
attribute   :      print                                   authorization to use Printer2
object type :  table                                   database table
object      :    Payment                                 table for payments for BANKA
attribute   :      TableName=A_Pmnt                        table name
attribute   :      SchemaName=HPL_s4                       schema name
attribute   :      read                                    authorization to read data from table
attribute   :      update                                  authorization to update data in table
attribute   :      delete                                  authorization to delete data from table
               .                                      .
               .                                      .
               .                                      .  

The definitions of all the OUs for an FTM SWIFT instance comprise the configuration data for that instance. A special node called a configuration-data provider node (CPN) adds a subset of the configuration data (that is, a list of the COs that the OU contains and their values) to each message. Because a message is passed from node to node within the message flow, all the nodes in the flow are able to access and use the configuration data.