![]() |
![]()
| ![]() |
![]()
NAMEAuthen::Htpasswd - interface to read and modify Apache .htpasswd files SYNOPSISmy $pwfile = Authen::Htpasswd->new('user.txt', { encrypt_hash => 'md5' }); # authenticate a user (checks all hash methods by default) if ($pwfile->check_user_password('bob', 'foo')) { ... } # modify the file (writes immediately) $pwfile->update_user('bob', $password, $info); $pwfile->add_user('jim', $password); $pwfile->delete_user('jim'); # get user objects tied to a file my $user = $pwfile->lookup_user('bob'); if ($user->check_password('vroom', [qw/ md5 sha1 /])) { ... } # only use secure hashes $user->password('foo'); # writes to file $user->set(password => 'bar', extra_info => 'editor'); # change more than one thing at once # or manage the file yourself my $user = Authen::Htpasswd::User->new('bill', { hashed_password => 'iQ.IuWbUIhlPE' }); my $user = Authen::Htpasswd::User->new('bill', 'bar', 'staff', { encrypt_hash => 'crypt' }); print PASSWD $user->to_line, "\n"; DESCRIPTIONThis module provides a convenient, object-oriented interface to Apache-style .htpasswd files. It supports passwords encrypted via MD5, SHA1, and crypt, as well as plain (cleartext) passwords. Additional fields after username and password, if present, are accessible via the "extra_info" array. METHODSnewmy $pwfile = Authen::Htpasswd->new($filename, \%options); Creates an object for a given .htpasswd file. Options:
lookup_usermy $userobj = $pwfile->lookup_user($username); Returns an Authen::Htpasswd::User object for the given user in the password file. all_usersmy @users = $pwfile->all_users; check_user_password$pwfile->check_user_password($username,$password); Returns whether the password is valid. Shortcut for "$pwfile->lookup_user($username)->check_password($password)". update_user$pwfile->update_user($userobj); $pwfile->update_user($username, $password[, @extra_info], \%options); Modifies the entry for a user saves it to the file. If the user entry does not exist, it is created. The options in the second form are passed to Authen::Htpasswd::User. add_user$pwfile->add_user($userobj); $pwfile->add_user($username, $password[, @extra_info], \%options); Adds a user entry to the file. If the user entry already exists, an exception is raised. The options in the second form are passed to Authen::Htpasswd::User. delete_user$pwfile->delete_user($userobj); $pwfile->delete_user($username); Removes a user entry from the file. AUTHORDavid Kamholz "dkamholz@cpan.org" Yuval Kogman SEE ALSOApache::Htpasswd. COPYRIGHT & LICENSECopyright (c) 2005 - 2007 the aforementioned authors. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
|