Office of Information Technology
University of Florida
 Services *  Committees *  Units *  Projects *  Policies *  Training *
 

Identifier Translation options: SSN/UFID/UUID

The University of Florida is a complex and diverse organization. Unit missions and staffing capabilities vary widely and preferred computing environments are equally diverse. Unit programmers involved in translating identifiers may choose to utilize NERDC-based API functions directly or may prefer to use Java, perl, C, C++, Visual Basic or other languages to support local systems.

All options described below require pre-approved authorization. Approval requirements for software created to use the first two programming options are documented on the UF Directory Project web site (see "Obtaining Authority to call an API by Registering Applications.") located on the API page.

The third, and the only non-programming option, requires individuals to obtain access approval by working with their unit's On-Line Security Request processor (contact your unit's senior administrator if you need to find out who performs this function for your department).

The fourth option requires submission of a form (bawiform_RNJ50005_001.pdf) to Information Systems.


OPTION 1: Software access using DB2 database APIs or views.

IBM's DB2 Run-Time Client (version 7.2) must be installed locally to gain ODBC access to a DB2 stored procedure API or Identifier view managed by Information Systems. Contact Debbie Sams (dsams@ufl.edu) at Information Systems or Richard Marquis (rmarquis@ufl.edu) at NERDC if you have any questions concerning client configuration issues.

Units utilizing this approach for interacting with the UF Directory are responsible for developing software applications to maintain or update local database applications. Unit programmers must handle all details associated with making database connections and calling available stored procedures. This option may be useful in automating routine, repetitive processes.

Information on the use of DB2 stored procedure APIs associated with the UF Directory is presented at the UF Directory Project web site under Directory Design/APIs.

Download and install the FP5_WR21294_RTClient.zip runtime client from:
ftp://ftp.software.ibm.com/ps/products/db2/fixes/english-us/db2ntv7/client/runtime/.

Information needed to configure the client to work with the UF Directory:

FOR PRODUCTION
host: db2-gateway01.nerdc.ufl.edu
port: 3700
database: NERDB0P
alias: BADBPROD (or whatever you want)

FOR TEST
host: db2-gateway02.nerdc.ufl.edu
port: 3700
database: NERDB0T
alias: BADBTEST (or whatever you want)

IBM DB2 manuals

From IBM's documentation site (http://www-3.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/v7pubs.d2w/en_main):

A DB2 Run-Time Client provides the functions to enable your applications to access DB2 Universal Database servers and DB2 Connect gateways. JDBC, SQLJ, ODBC and OLE DB are all supported by this client.

Hardware and software requirements (for Windows)
* 16 MB RAM minimum
* One of the following operating systems:
o Microsoft Windows 95 4.00.950 or later
o Microsoft Windows 98
o Microsoft Windows NT Version 4.0 with Service Pack 4 or later
o Microsoft Windows Terminal Server
o Microsoft Windows 2000
 
Hardware and software requirements (for Linux)
* Linux kernel 2.2.12 or higher
* glibc Version 2.1.2 or higher
* pdksh package (required to run the DB2 command line processor)
* libstdc++ Version 2.9.0
* rpm

OPTION 2: Software access using Java APIs.

Classes contained in Production and Test versions of a Remote Client JAR files have been developed by the UF Directory Project team. The appropriate jar file must be downloaded and placed in the appropriate classpath (e.g., JAVA_HOME/LIB/EXT). As the example code shown at "Using JAVA to call the Identifier Translate API (BAUDD250)" (found on the Directory Project Programming page) indicates, standard Java method calls are to be used for this access method. All connection and call details are handled automatically by the Directory Java API. No additional software is required to use this resource.

Units taking this approach to working with the UF Directory are responsible for developing software applications to maintain or update local database systems.

A typical process will involve using locally-authored software to obtain identifier data from a local database, calling the UF Directory Java API, obtaining a result from the call, and then using or storing the corresponding identifier information.

This option may be useful in automating routine, repetitive processes.


OPTION 3: Use the UFID Group Translator application (no programming required).

Many units do not have programming staff who are capable of creating software to translate identifiers. The UF Directory development team has created a web-enabled software application that can be used to translate SSN values to corresponding UFID values (or vice versa). The application is called the "UFID Group Translator."

A unit's On-Line Security Request processor must request access for specific individuals within their scope of authority to use application 1189 (UFID Group Translator). When access has been approved, the application will appear the following day (overnight processing is required) on the individual's Administrative Applications Menu as an option under the Administrative Services heading.

Instructions on the application screen state: "Paste the group of IDs you wish to translate (500 max). Identification numbers may be formatted with or without dashes. Valid delimiters are spaces, commas, tabs, or carriage returns."

Authorized departmental staff may submit a list of up to 500 identifiers (e.g., SSNs) obtained from the local system. Using cut-and-paste techniques, the list of SSNs may be pasted into the UFID Group Translator interface before pressing the "SSN to UFID" or "UFID to SSN" command button. When the values have been translated into UFIDs, the resulting data can be copied into the local system for use or saved as a Word document (Rich Text format) or tab-delimited Excel spreadsheet for subsequent use. Be sure to exit or Logoff (upper right corner of the screen) when finished.

This function cannot be automated for hands-off operation. The application was designed to allow units to obtain a list of UFIDs without writing a special software application. Consider the following as an example of potential use for this application.

Someone in your unit has an Access database which uses Social Security numbers as a record key. The database needs to be changed to use UFIDs. The list of record keys (i.e., SSNs) can be copied by viewing a selected Access table in table view and clicking the appropriate column heading to select all of the information in that column. Using Edit/Copy and Edit/Paste, the data can be copied directly into the UFID Group Translator.

When corresponding UFIDs appear in the UFID Group Translator, the same Edit/Copy and Edit/Paste techniques may be used to place the new values in your database or spreadsheet application. Because the UFID is one character shorter than SSN, the database definition may need to be updated or the column width in a spreadsheet might be re-sized to accommodate this change.


OPTION 4: Batch translation of identifiers (no programming required, but mainframe dataset access is involved in this process).

Large sets of identifiers can be converted by sending a file to Information Systems. A program created by Information Systems (job RNJ50005) is used to translate one type of identifier (SSN, UFID, or UUID) to another. Departments provide an input file or dataset containing one type of identifier and specify which of the other two types are to be placed in the output file. Only one type of translation (e.g., SSN to UFID, UFID to SSN, SSN to UUID, etc.) may be requested at a time.

The authorization approval form (bawiform_RNJ50005_001.pdf) must be submitted to Information Systems and approved before this service may be used.

INSTRUCTIONS

1. Create an input dataset that starts with "BA.I48.USER" and contains 

   a departmental reference name and identifier type name (see examples 

   below). Follow standard NERDC (RACF) dataset naming conventions.



2. The data in the input file must start in column 1 and be 12 characters long.



    Input dataset: BA.I48.USER.IFAS.DIR.SSNIN

         (For example: BA.I48.USER.INFOSYS.SSNIN)



    Identifier Input Type:      SSN     

         (Use only: SSN, UFID, or UUID)



    Output Dataset:    BA.I48.USER.IFAS.DIR.UFIDOUT  

         (For example: BA.I48.USER.INFOSYS.UFIDOUT)



    Identifier Output Type:     UFID    

         (Use only: SSN, UFID, or UUID)

		 

First time users: Send e-mail to ISRACFAdmin@admin.ufl.edu and provide 

a RACF group ID so we can allow you access to BA.I48.USER.datasetname



The e-mail should be formatted as follows:



  Please grant access to BA.I48.USER.* to RACF group __________ so  

  we can request run RNJ50005. (RACF Group ID)



The Requestor should delete their datasets after completion.



3. Submit this request to Production Scheduling, Information Systems, 

   6 Tigert Hall, P.O. Box 113275.



Contact the Information Systems Directory Project Coordinator at 392-1285 

if you have any questions regarding the use of this form.