[Catalyst] ANNOUNCE: SimpleDB - Auth configuration made easy
Jason Kuri
jayk at ion0.com
Mon Oct 27 14:37:31 GMT 2008
Hi Zbigniew,
You are correct. I made some last-minute changes to the config
options and neglected to update the doc. Shame on me.
A 0.1081 is on it's way to CPAN.
You need to specify the model name that represents a user. The config
field is 'user_model' (was user_class.)
And re: EncodedColumn - the SimpleDB provides an interface to what is
already available via the Password credential. That allows any
Digest::* module to be used for encoding of passwords, so we piggyback
on that functionality. Or am I misunderstanding what you were
suggesting?
Jay
On Oct 27, 2008, at 7:24 AM, Zbigniew Lukasiak wrote:
> Hi,
>
> I've looked at the documentation:
>
> The SimpleDB Realm class configures the Catalyst authentication system
> based on the following:
>
> * Your user data is stored in a table that is accessible via
> $c->model('User');
> * Your passwords are stored in the 'password' field in your users
> table and are not encrypted.
> * Your roles for users are stored in a separate table and are
> directly accessible via a DBIx::Class relationship called 'roles' and
> the text of the role is stored in a field called 'role' within the
> role table.
> * Your user information is stored in the session once the user is
> authenticated.
>
> For the above usage, only one configuration option is necessary,
> 'user_class'. user_class should contain the class name of your user
> class. See the "PREPARATION" section for info on how to set up your
> database for use with this module.
>
> There seems to be some mismatch there - in the first point above you
> mention that there is a default user class - 'User' - but then you say
> that user_class is a required config option. Or maybe I am mistaken?
> It is not clear what really the first point above means.
>
> Another question - have you thought about using
> http://search.cpan.org/~groditi/DBIx-Class-EncodedColumn-0.00002/lib/DBIx/Class/EncodedColumn.pm
> (or the older DigestColumn) to simplify the interface?
>
> Cheers,
> Zbigniew
>
> On Mon, Oct 27, 2008 at 1:36 AM, Jason Kuri <jayk at ion0.com> wrote:
>> Hey all,
>>
>> Catalyst authentication configuration just got a whole lot easier.
>>
>> I just released two updates to CPAN that will make Auth configuration
>> much much easier for the 'average' case where you have user data
>> stored in an SQL database and you are using passwords for
>> authentication.
>>
>> Now, the 'basic' config using plaintext passwords looks like this:
>>
>> __PACKAGE__->config->{'Plugin::Authentication'} =
>> {
>> default => {
>> class => 'SimpleDB',
>> user_class => 'MyApp::User',
>> }
>> }
>>
>> For the 'basic' config using a hashed password - just a bit more
>> complex:
>>
>> __PACKAGE__->config->{'Plugin::Authentication'} =
>> {
>> default => {
>> class => 'SimpleDB',
>> user_class => 'MyApp::User',
>> password_type => 'hashed',
>> password_hash_type => 'SHA1'
>> }
>> }
>>
>> Hopefully, people will not find this config overwhelming. :-)
>>
>> For those who are interested, the custom configuration is
>> accomplished
>> by using a custom Realm, SimpleDB, which is part of the most recent
>> Catalyst::Authentication::Store::DBIx::Class dist. A lot of
>> flexibility can be gained in configuration and functionality by
>> creating custom Realms. This is just one example.
>>
>> The modules are available (or will be soon) at:
>>
>> http://search.cpan.org/~jayk/Catalyst-Authentication-Store-DBIx-Class-0.108/lib/Catalyst/Authentication/Realm/SimpleDB.pm
>>
>> ( A preview of the docs are available here: http://scsys.co.uk:8001/19881
>> )
>>
>> and
>>
>> http://search.cpan.org/~jayk/Catalyst-Plugin-Authentication-0.10008/
>>
>> If anyone has any questions or comments, please reply to this email,
>> or find me on #catalyst.
>>
>> I am also soliciting anyone who is willing to take a crack at
>> simplifying the Auth section of the Catalyst tutorial by using this
>> module, as I think most users are looking to do exactly this type of
>> config when they first approach Catalyst and are reading the
>> Tutorial. Any volunteers?
>>
>> JayK
>>
>> _______________________________________________
>> List: Catalyst at lists.scsys.co.uk
>> Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
>> Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
>> Dev site: http://dev.catalyst.perl.org/
>>
>
>
>
> --
> Zbigniew Lukasiak
> http://brudnopis.blogspot.com/
> http://perlalchemy.blogspot.com/
>
> _______________________________________________
> List: Catalyst at lists.scsys.co.uk
> Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
> Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
> Dev site: http://dev.catalyst.perl.org/
More information about the Catalyst
mailing list