rlm_sql - Different table for User authentication
Andrew Olson
anolson at gmail.com
Thu Apr 17 19:32:32 CEST 2008
I was trying to do something just like this. I have an existing user
database that is already in production.
My user table looks something like:
user_name, status, etc(no Attribute, Value, op columns)
My SQL query ended up looking something like:
authorize_check_query = "SELECT 1 as id, user_name as UserName,
'Auth-Type' as Attribute, 'EAP' as Value, ':=' as op FROM
${authcheck_table} WHERE user_name = '%{SQL-User-Name}'"
FR is particular about the order of the columns(i.e. it expects id at
index 0, username at index 1, and so on).
Eventually the plan is to create a view that FR is happy with.
-andrew
2008/4/17 rsg <ranil.santhish at gmail.com>:
> 2nd option is chosen.
>
> Many thanks.
>
> rg
>
> 2008/4/17 Ivan Kalik <tnt at kalik.net>:
>
>
> > Database is used to store attributes. It doesn't authenticate users.
> > >From data you have stored in authcheck table no attribute can be created
> > with chack query so that's a likely reason for segfault.
> >
> > 1. Use another module (perl, exec) that can do authentication with data
> > from authcheck table.
> >
> > or
> >
> > 2. Add attribute name and op fields (back) to your table and fix them in
> > your modified query to Cleartext-Password (or whatever password
> > attribute you are using) and :=.
> >
> > Ivan Kalik
> > Kalik Informatika ISP
> >
> >
> > Dana 17/4/2008, "rsg" <ranil.santhish at gmail.com> piše:
> >
> >
> >
> > >Hi,
> > >
> > >I need to use a different auth table for Username/Password check.
> > >
> > >
> > >Here are the modifications I made into config.
> > >
> > >#raddb/sql.conf
> > >
> > >:
> > > authcheck_table = "authcheck"
> > >:
> > >..
> > >
> > >#raddb/sql/mysql/dialup.conf
> > >:
> > >..
> > >## +++++++++ Here i retain the order of return data but omit some
> > >Attributes (2. Attr Name and 4.Attr Operation as described in
> > >Authorization Queries) +++++
> > >
> > > authorize_check_query = "SELECT id, userid, passwd \
> > > FROM ${authcheck_table} \
> > > WHERE userid = '%{SQL-User-Name}' \
> > > ORDER BY id"
> > >
> > >
> > >## +++++++++++++I DID NOT TOUCH THE REPLY QUERY
> > >++++++++++++++++++++++++++++++++++++++
> > >
> > > authorize_reply_query = "SELECT id, username, attribute, value, op \
> > > FROM ${authreply_table} \
> > > WHERE username = '%{SQL-User-Name}' \
> > > ORDER BY id"
> > >:
> > >..
> > >
> > >When I tried to authenticate a user I get a segmentation fault as follows;
> > >
> > >------
> > >rlm_sql (sql): sql_set_user escaped user --> 'test'
> > >rlm_sql (sql): Reserving sql socket id: 2
> > > expand: SELECT id, userid , password FROM authcheck WHERE userid
> > >= '%{SQL-User-Name}' ORDER BY id
> > >-> SELECT id, userid, password FROM authcheck WHERE login = 'test' ORDER BY id
> > >
> > >Segmentation fault
> > >------
> > >
> > >Are there any particular parameters/settings that i've missed here?
> > >
> > >
> > >Thanks for the suggestions.
> > >
> > >rg
> > >-
> > >List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html
> > >
> > >
> >
> > -
> > List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html
> >
>
> -
> List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html
>
More information about the Freeradius-Users
mailing list