[rt-users] Another RT::Authen::ExternalAuth question
Michael James
MJames at stonebridgebank.com
Thu Jan 14 14:05:46 EST 2010
Truly. I decided the same thing myself after about 10 extra minutes of thinking about it. I removed the MySQL external authentication and just let it use LDAP. This was my 1st implementation of this plugin and I didn't "get it" in the beginning.
thanks for everyone's help.
Mike
>>> Kevin Falcone <falcone at bestpractical.com> 1/14/2010 1:23 PM >>>
On Thu, Jan 14, 2010 at 11:20:17AM -0500, Michael James wrote:
> Well, now we're making progress! Thanks, Bill. No offense taken. The errors are in my setup of RT::Authen::ExternalAuth variables in RT_SiteConfig.pm.
>
> I didn't realize mysql was so case-sensitive and the different values hadn't really registered with me. Changing the table variable in RT_SiteConfig.pm from USERS to Users worked and got me to the next errors. This seems a little odd to me because I'm really using the default installation values of both RT and RT::Authen::ExternalAuth except for the base path. I made an assumption that the values in the sample RT_SiteConfig.pm from ExternalAuth's setup would be consistent with the default MySQL tables/columns. My bad... Anyway, problem solved and I thank you very much.
Unless you're authenticating against a custom mysql database, there is
no need to tell RT::Authen::ExternalAuth about RT's internal database
tables.
It sounds like you want to tell RT::Authen::ExternalAuth to only use
your LDAP configuration.
RT will fall back to internal auth if RT::Authen::ExternalAuth fails
to authenticate you against LDAP
-kevin
> The next errors were fixed by changing the field names to match the actual column names in the RT database. I'm just showing this for completeness.
>
>
> Jan 14 11:04:18 rt384 RT: DBD::mysql::db selectall_hashref failed: Unknown column 'email' in 'field list' at /opt/cashmgt/local/plugins/RT-Authen-ExternalAuth/lib/RT/Authen/ExternalAuth/DBI.pm line 163, <DATA> line 514. (/opt/cashmgt/local/plugins/RT-Authen-ExternalAuth/lib/RT/Authen/ExternalAuth/DBI.pm:163)
>
> So now the table (Users) is found, but the columns are not. The relevant portion of RT_SiteConfig.pm is:
>
> # The mapping of RT attributes on to field names
> 'attr_map' => { 'Name' => 'username',
> 'EmailAddress' => 'email',
> 'ExternalAuthId' => 'username',
> 'Gecos' => 'userID'
>
>
> >>> William Graboyes <william.graboyes at theportalgrp.com> 1/13/2010 6:23 PM >>>
> Hi Mike,
>
> I intend no offense, I am just trying to help out, and sometimes we forget
> to check the easy stuff first (hey we all do some times :) ).
>
> That being said I think we have this figured out:
>
> I know it is like a game of 20 questions, but in my current installs 3.8.4
> and 3.8.6 with mysql the table USERS does not exist, because the table name
> is Users. I am not sure if perl dbi is picky about case, but my gut
> instinct would be that it is, and I know that mysql is picky about case in
> this sense.
>
> Even mysql directly doesn't like case mismatch.
>
> select * from `cachemgt`.`USERS`; -- would result in an error because the
> table USERS doesn't exist -- as a matter of a fact it is the same exact
> error you are seeing in the logs "Table 'cachemgt.USERS' doesn't exist".
> select * form `cachemgt`.`Users`; -- works on my instance because the tabke
> Users does exist.
>
> Note that I changed the query to match your database structure.
>
> HTH,
>
> Thanks,
> Bill
>
> On Wed, Jan 13, 2010 at 3:08 PM, Michael James
> <MJames at stonebridgebank.com>wrote:
>
> > Bill, that is indeed the RT-database. I posted my RT_SiteConfig.pm file
> > earlier today if you'd like to peruse it. The rt_user has permissions.
> >
> > Thanks, Mike
> >
> > >>> William Graboyes <william.graboyes at theportalgrp.com> 1/13/2010 5:47 PM
> > >>>
> > Hi Mike,
> >
> > Asking questions from the questioner.
> >
> > Is that a separate database from your RT database?
> >
> > If it is a separate database, does your rt db user have access to that
> > database?
> >
> > Just trying to help.
> >
> > Thanks,
> > Bill
> >
> > On Wed, Jan 13, 2010 at 2:36 PM, Michael James
> > <MJames at stonebridgebank.com>wrote:
> >
> > > Thanks, Bill. The database name is cashmgt and the table name is USERS,
> > > rather than table and column names. In any case, the table does exist.
> > >
> > > Mike
> > >
> > > >>> William Graboyes <william.graboyes at theportalgrp.com> 1/13/2010 5:30
> > PM
> > > >>>
> > > Hi Mike,
> > >
> > > Purely from a log file perspective, I know nothing about external auth,
> > it
> > > is saying that the column USERS doesn't exist in the table cachemgmt. It
> > > looks like it is trying to then recover gracefully, instead of puking all
> > > over itself and refusing to allow you to log in.
> > >
> > > Again purely from the Log File Perspective, I am sure that there are
> > others
> > > out there with a massive store of knowledge on external auth, that may
> > help
> > > you fix this one.
> > >
> > > Thanks,
> > > Bill
> > >
> > > On Wed, Jan 13, 2010 at 2:20 PM, Michael James
> > > <MJames at stonebridgebank.com>wrote:
> > >
> > > > Hi, I see an error in my /var/log/messages file when I'm logging in to
> > > this
> > > > instance of RT. Fresh install of RT 3.8.7 on SLES10 64-bit. What does
> > > this
> > > > imply? The mysql database cashmgt exists and I can login with the
> > default
> > > > root credentials, I just don't how to interpret the message.
> > > >
> > > > Thanks, Mike
> > > >
> > > >
> > > > Jan 13 17:04:41 rt384 RT: DBD::mysql::db selectall_hashref failed:
> > Table
> > > > 'cashmgt.USERS' doesn't exist at
> > > >
> > >
> > /opt/cashmgt/local/plugins/RT-Authen-ExternalAuth/lib/RT/Authen/ExternalAuth/DBI.pm
> > > > line 219, <DATA> line 514.
> > > >
> > >
> > (/opt/cashmgt/local/plugins/RT-Authen-ExternalAuth/lib/RT/Authen/ExternalAuth/DBI.pm:219)
> > > > Jan 13 17:04:41 rt384 RT: Issuing rollback() for database handle being
> > > > DESTROY'd without explicit disconnect() at
> > > >
> > >
> > /opt/cashmgt/local/plugins/RT-Authen-ExternalAuth/lib/RT/Authen/ExternalAuth/DBI.pm
> > > > line 219, <DATA> line 514.
> > > >
> > >
> > (/opt/cashmgt/local/plugins/RT-Authen-ExternalAuth/lib/RT/Authen/ExternalAuth/DBI.pm:219)
> > > > Jan 13 17:04:41 rt384 RT: Successful login for root from 172.31.4.144
> > > > (/opt/cashmgt/bin/../lib/RT/Interface/Web.pm:430)
The information in this message may be proprietary and/or confidential, and protected from disclosure. If the reader of this message is not the intended recipient, or an employee or agent responsible for delivering this message to the intended recipient, you are hereby notified that any dissemination, distribution or copying of this communication is strictly prohibited. If you have received this communication in error, please notify Stonebridge Bank immediately by replying to this message and deleting it from your computer.
More information about the rt-users
mailing list