'Plugin::Authentication' =>
{
default_realm => 'members',
members => {
credential => {
class => 'Password',
password_field => 'password',
password_type => 'self_check'
},
store => {
class => 'DBIx::Class',
user_model => 'DB::User',
}
}
},
####
__PACKAGE__->add_columns(
'password' => {
data_type => 'varchar',
encode_column => 1,
encode_class => 'Crypt::PBKDF2',
encode_args => {
hash_class => 'HMACSHA2',
hash_args => {
sha_size => 512,
},
iterations => 10000,
salt_len => 10,
},
encode_check_method => 'check_password',
}
);
####
#!/usr/bin/perl
use strict;
use warnings;
use MyApp::Schema;
my $schema = MyApp::Schema->connect('dbi:mysql:database', 'root', '');
my @users = $schema->resultset('User')->all;
# Just traversing the User
foreach my $user (@users) {
if ($user->email eq 'xyz') {
$user->password('password');
$user->update;
}
}