RSSO Transformation


 

APL RSSO Transformation Plugin

This plugin allows BMC’s RSOO tool to do custom transformations. At the moment the only source this plugin uses is Remedy itself. I wrote it to help out my DOD friends. Typically, when you are authenticating via a CAC, the CAC doesn’t contain information that you necessarily want to have as the login id of your Remedy user, so the question arose, how do I transform the CAC information into a human understandable thing. You can typically use the CN, DN, UID, or maybe even the email address, but more than likely you don’than want to use that information for your Remedy Login ID. That’s where this plugin comes in. What this plugin does is after authentication with your source, it will take the ID that’s passed to it, and allow you to transform that ID into something else. At the moment, the plugin supports a very flexible transformation routine. You can provide it with the Remedy connection credentials, tell it what form contains the transformation information, what field to do the lookup on, and what field contains the results. With this simple information, the transformation can turn any value stored in a Remedy table into another value of your choice. This greatly enhances your ability to transform system codes into user variables. If this plugin has any issues with ANY part of the process, it simply returns the inputFieldID as the output, so if you find that there are issues with the transformation not happening, check the config and check your source form for properties transformation data

Installation of the plugin is simple as dictated on the BMC docs page

https://docs.bmc.com/docs/display/public/ars91/Creating+a+new+plug-in+to+transform+user+IDs

Copy the JAR file to the following directory: <installation-directory>/tomcat/webapps/rsso/WEB-INF/lib

In this case, you will be copying APLRSSOTransformation.jar AND APLRSSOTransformation.properties into the lib folder

Due to the nature of how this code works, I had to hard code the location of the properties file to be

./webapps/rsso/WEB-INF/lib/APLRSSOTransformation.properties

which is relative to where you have your Tomcat installed, but it must be in that folder for the plugin to be able to read the config file
so if you needed to put RSSO under a different folder….well, this config file needs to be in that folder….

Inside that properties file are a few parameters

This parameter is for future expansion…if someone needs to do transformations from somewhere else, I can entertain expanding it, for now
it needs to be left at RemedyServer to function
transformSource: RemedyServer

This is the Name/IP of the server that the plugin will be doing the transformation from
remedyServer:

When it comes to authentication, you have two options: 1 – Provide a userID/PW combination to connect, or 2 – provide a RAS Hash. This is the
value that’s stored in your ar.cfg file under the heading of ‘Remedy-App-Service-Password’. If you provide that value, you don’t need to give
me either a userID or a password, and it’s hashed, so there aren’t any clear text passwords laying around
remedyUser:
remedyPass:
remedyRASValue:

This value is only used if you aren’t using Port Mapper. If you want to specify the port, specify the value you need to use
remedyPort:

These are the transformation fields. Here you specify what form the information is stored on, what field the ‘from’ is stored in, and what field
the ‘to’ information is stored in, the plugin does a lookup on this form where the value you get from your source is the value of the field and grabs
the value in the output field ID and returns that as the output of the plugin
inputForm: User
inputFieldID: 103
outputFieldID: 101

 

Version History
1.1 – July 3, 2018
– Updated release providing additional examples and configurable logging
1.0 – May 18th 2017
– Initial release