r10 - 04 May 2006 - 00:37:41 - SamHaslerYou are here: TWiki >  Codev Web > TWikiRoot > LibDir > TWikiDir > UserDotPm
Tags:
, create new tag

Module name TWiki::User UserDotPm
Location TWIKIROOT/lib/TWiki/User.pm
Summary This module implements the user authentication
Primary Author SvenDowideit
CVS history CVS:lib/TWiki/User.pm
CVS alpha CVSget:lib/TWiki/User.pm
Contributing authors (see CVS History)
Is Class NO
First Release CairoRelease
File Hierarchy
  TWIKIROOT
  lib
  TWiki
  User.pm

Purpose

This module hosts the User Authentication implementation.

Currently it is hardwired to Apache based HtPasswd? / HtDigest? backends using HtPasswdUserDotPm, or NoPasswdUserDotPm for always return yes, no password system.

Used by

This module is used by TWikiDotPm, RegisterCgiScript, PasswdCgiScript, ManageCgiScript and InstallpasswdCgiScript.

Please see CodevDocumentationProject and CodevDocumentationProjectDev to comment on the format of these pages.

Note: Below documentation is extracted from the currently installled TWiki::User Perl module, which is done by the PerlDocPlugin

package TWiki::User

A User object is an internal representation of a user in the real world. The object knows about users having login names, wiki names, personal topics, and email addresses.

Groups are also handled here. A group is really a subclass of a user, in that it is a user with a set of users within it.

The User package also provides methods for managing the passwords of the user.

ClassMethod new( $session, $loginname, $wikiname )

Construct a new user object for the given login name, wiki name.

The wiki name can either be a wiki word or it can be a web- qualified wiki word. If the wiki name is not web qualified, the user is assumed to have their home topic in the $TWiki::cfg{UsersWebName} web.

ObjectMethod wikiName() -> $wikiName

Return the wikiname of the user (without the web!)

ObjectMethod webDotWikiName() -> $webDotWiki

Return the fully qualified wikiname of the user

ObjectMethod login() -> $loginName

Return the login name of the user

ObjectMethod web() -> $webName

Return the registration web of the user

ObjectMethod equals() -> $boolean

Test is this is the same user as another user object

ObjectMethod stringify() -> $string

Generate a string representation of this object, suitable for debugging

ObjectMethod passwordExists( ) -> $boolean

Checks to see if there is an entry in the password system Return '1' if true, '' if not

ObjectMethod checkPassword( $password ) -> $boolean

used to check the user's password

$password unencrypted password

$success '1' if success

TODO: need to improve the error mechanism so TWikiAdmins know what failed

ObjectMethod removePassword() -> $boolean

Used to remove the user and password from the password system. Returns true if success

ObjectMethod changePassword( $user, $oldUserPassword, $newUserPassword ) -> $boolean

used to change the user's password $oldUserPassword unencrypted password $newUserPassword unencrypted password undef if success, error message otherwise

ObjectMethod addPassword( $newPassword ) -> $boolean

creates a password entry $newUserPassword unencrypted password '1' if success TODO: need to improve the error mechanism so TWikiAdmins know what failed

ObjectMethod resetPassword() -> $newPassword

Reset the users password, returning the new generated password.

ObjectMethod emails() -> @emailAddress

If this is a user, return their email addresses. If it is a group, return the addresses of everyone in the group.

ObjectMethod setEmails($user, @emails)

Fetch the email address(es) for the given username

ObjectMethod isAdmin() -> $boolean

True if the user is an admin (is a member of the $TWiki::cfg{SuperAdminGroup})

ObjectMethod getGroups( ) -> @groups

Get a list of user objects for the groups a user is in

ObjectMethod isInList( $list ) -> $boolean

Return true we are in the list of user objects passed.

$list is a string representation of a user list.

ObjectMethod isGroup() -> $boolean

Test if this is a group user or not

ObjectMethod groupMembers() -> @members

Return a list of user objects that are members of this group. Should only be called on groups.

Contributors:
-- SvenDowideit - 01 Feb 2004
-- PeterThoeny - 01 Feb 2004

Discussions

See proposal at UserObjectModel

-- MartinCleaver - 16 Oct 2004

Edit | WYSIWYG | Attach | Printable | Raw View | Backlinks: Web, All Webs | History: r10 < r9 < r8 < r7 < r6 | More topic actions
 
Powered by TWiki
This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback SourceForge.net Logo