RT3 User in external detabase

I have another database I would like to use in RT::User. That
database has all the info about the user.

I thought I could create a RT/User_Local.pm and change the needed
routines there, so that the user object would be an object from my
other system. I intended RT/User_Local.pm to translate the methods to
corresponding method calls to the user object I would like to use.

But thare seems to be some methods used by other parts of the program,
that are defined not in RT::User, but at a lower level. I find it
hard to figure out just what methods I should override.

And there isn’t a _Local system for overriding RT::CurrentUser. It
seems to me that RT::CurrentUser is expecting that the User object is
stored in RT. Maby I have to change both RT::User and
RT::CurrentUser.

How am I supposed to do this?

What is the deal with LookupSenderInExternalDatabase?

I don’t want to have two user databases, both having info about the
users name, addres, phones, email, and more.

But one of the main reasons is that I my DB has a list of emails for
each user. I would like to use itin order to not have a lot of users
in RT for the same user, just because they used diffrent email
addresses. I think I could do that by just overriding the
CanonicalizeEmailAddress() method. But that only solves a part of the
problem.

jonas@rit.se RIT AB http://www.rit.se
Box 70, 428 21 Kållered Besök: G:a Riksvägen 36
Tel: +46 (0)31 751 8600 Fax: +46 (0)31 751 8609