Hello All, As some of you know I've been working on an update to Catalyst's Authentication system for some time.
Well, finally, there is a new Catalyst::Plugin::Authentication module available for general testing. The biggest new feature in this release is support for the concept of realms, which allows you to have multiple pairings of credentials / stores in the same app.... Essentially different groups of users with different authentication processes and / or storage methods. This allows, for example, two separate db tables for users of different types (students / instructors, users / admins, etc.) It also allows for multiple authentication trys - for example - try against this LDAP server, if it fails, try against this db, etc. (note the LDAP module still needs updating to be compatible with realms) I'm sure other uses for realms will show up also. You can read more about it / get it here: http://search.cpan.org/~jayk/Catalyst-Plugin-Authentication-0.09999_01/ There is also a new DBIx::Class storage module to go along with the updated Authentication system available here: http://search.cpan.org/~jayk/Catalyst-Plugin-Authentication-Store- DBIx-Class-0.02/ This provides a much more flexible authentication process - allowing for arbitrary checks when retrieving a user. Checking a status flag, or checking against multiple fields for verification, are now possible. Essentially anything you could construct with a normal DBIx::Class search you can use for authentication. Note that the new DBIx::Class module only works with the updated Auth module. Much of the internals of the Auth plugin have been rewritten. This requires existing authentication stores / credentials to be updated in order to function with the realms code. The updates are relatively minor (See the Internals doc to see how it works) It will take a while for all the existing modules to be updated, so by default the auth module will operate in compatability mode, allowing the older modules to be used. Unfortunately, due to the changes required for realms support, compatibility mode and realms mode are mutually exclusive. If you are interested, please grab a copy / check it out. If you feel like lending a hand, things that need doing are: * Testing of compatibility mode with the existing Store and Credential modules. * Helping to complete the tests for the realms code / DBIx::Class * Updating existing Store / Credentials to be compatible with realms mode (see the 'Internals' pod for details) * General feedback Thanks, and obviously, feel free to post questions here, or on #catalyst JayK _______________________________________________ List: [email protected] Listinfo: http://lists.rawmode.org/mailman/listinfo/catalyst Searchable archive: http://www.mail-archive.com/[email protected]/ Dev site: http://dev.catalyst.perl.org/
