X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=catagits%2FCatalyst-Manual.git;a=blobdiff_plain;f=lib%2FCatalyst%2FManual%2FTutorial%2FAuthentication.pod;h=673a93dc12f4b1f93e3e5f246c213d74a5228904;hp=2719cc43912d4b2923995cb99ae26b4e42239835;hb=6d0971ad6e54665ea8c239499e715a64fe1b83ca;hpb=8c4a5110106a0c4d2e416ec772cdd0bfefb4862c diff --git a/lib/Catalyst/Manual/Tutorial/Authentication.pod b/lib/Catalyst/Manual/Tutorial/Authentication.pod index 2719cc4..673a93d 100644 --- a/lib/Catalyst/Manual/Tutorial/Authentication.pod +++ b/lib/Catalyst/Manual/Tutorial/Authentication.pod @@ -339,17 +339,24 @@ Edit C and update it as follows (everything below C is StackTrace Authentication - Authentication::Store::DBIC - Authentication::Credential::Password Session Session::Store::FastMmap Session::State::Cookie /; -The three C plugins work together to support +The C plugin supports Authentication while the C plugins are required to maintain -state across multiple HTTP requests. Note that there are several +state across multiple HTTP requests. + +Note that the only required Authentication class is the main +one. This is a change that occured in version 0.09999_01 +of the C plugin. You B to specify a +particular Authentication::Store or Authentication::Credential plugin. +Instead, indicate the Store and Credential you want to use in your application +configuration (see below). + +Note that there are several options for L (L is generally a good choice if you are on Unix; try @@ -375,21 +382,25 @@ C YAML and update it to match: --- name: MyApp authentication: - dbic: - # Note this first definition would be the same as setting - # __PACKAGE__->config->{authentication}->{dbic}->{user_class} = 'MyAppDB::User' - # in lib/MyApp.pm (IOW, each hash key becomes a "name:" in the YAML file). - # + default_realm: dbic + realms: + dbic: + credential: + class: Password + password_field: password + password_type: self_check + store: + class: DBIx::Class # This is the model object created by Catalyst::Model::DBIC from your # schema (you created 'MyAppDB::User' but as the Catalyst startup # debug messages show, it was loaded as 'MyApp::Model::MyAppDB::User'). # NOTE: Omit 'MyApp::Model' to avoid a component lookup issue in Catalyst 5.66 - user_class: MyAppDB::User + user_class: MyApp::Users # This is the name of the field in your 'users' table that contains the user's name - user_field: username - # This is the name of the field in your 'users' table that contains the password - password_field: password - # Other options can go here for hashed passwords + id_field: username + role_relation: roles + role_field: rolename + ignore_fields_in_find: [ 'remote_name' ] Inline comments in the code above explain how each field is being used.