Authenticating users vs. using an external database

Our RT implementation will likely be running on a separate machine than our
customer control panel. Our customer database is on another machine
altogether (on an internal non-routable network behind a NAT/firewall thats
in a completely different country) Customers can do a myriad of things on
the control panel like see their invoices, bandwidth usage, order new
services and apply payment (among other things).

I’d like to tie our control panel system into RT.

Our customer database contains all the information about each customer that
you would ever want to know, what services they have, the domain names for
each of those services, if they have a colocated or leased server, the IP’s
that server has etc etc. as well as the email addresses used by this
customer for administrative purposes (where their invoices are sent and how
we would communicate with them via email).

I would like to use this database to authenticate users, ultimately it
would be nice to have RT use this database instead of the table built into
RT’s database.
OR
I am pretty proficient with perl, I could have it automagically create
(with RT::User) the account in RT’s system if they don’t already have one
just before they log in to RT (ie. it’d check to see if they have an
account already and if they don’t, use the info and create one right before
they login).

Has anyone done this already? What’s the best way to go about it in your
opinion? I wouldn’t mind reinventing the wheel a little bit, but I don’t
want to if I don’t have to.

Our RT implementation will likely be running on a separate machine than our
customer control panel. Our customer database is on another machine
altogether (on an internal non-routable network behind a NAT/firewall thats
in a completely different country) Customers can do a myriad of things on
the control panel like see their invoices, bandwidth usage, order new
services and apply payment (among other things).

Hi,

If your user database is visible via LDAP, you can use LDAP import scripts
to periodically copy the user data into RT, and Apache authentication against
LDAP. I think it’s much easier than what Jonas Liljegren tries to do.

Regards,
Stanislav