ExternalAuth - Changing attr_map LDAP Values


#1

I’ve just begun setting up RT, and everything seems to be going fairly smoothly so far. I’ve just completed my LDAP integration using the ExternalAuth feature, and I had a question about the values in the attr_map.

The values in the LDAP that I’m using are outside of my control, but aren’t quite correct for my purposes, so I wanted to set them a bit differently when they’re synced with RT.

Take something like EmailAddress. The config is generally:

'attr_map' => {
  ....
  'EmailAddress' => 'mail',
  ...
}

Say mail resolves to firstname.lastname@example.com, but I was to change this in RT to lastname.firstname@example.com - would there be a way to do this? Something like:

'attr_map' => {
  ....
  'EmailAddress' => '${sn}.${givenName}@example.com',
  ...
}

I’m guessing that there probably isn’t in the ExternalAuth, but thought that it was worth asking in case there was (or if there was another way to change this).


#2

I didn’t manage to find a solution to this using the ExternalAuth feature, so what I did instead was create a trigger/procedure in the database on INSERT/UPDATE on the users tables to set the email address to a concatenation of fields on that row.