MediaWiki master
MediaWiki\Session\UserInfo Class Reference

Object holding data about a session's user. More...

Public Member Functions

 __toString ()
 
 getId ()
 Return the user ID.
 
 getName ()
 Return the user name.
 
 getToken ()
 Return the user token.
 
 getUser ()
 Return a User object.
 
 isAnon ()
 Return whether this is an anonymous user.
 
 isVerified ()
 Return whether this represents a verified user.
 
 verified ()
 Return a verified version of this object.
 

Static Public Member Functions

static newAnonymous ()
 Create an instance for an anonymous (i.e.
 
static newFromId ( $id, $verified=false)
 Create an instance for a logged-in user by ID.
 
static newFromName ( $name, $verified=false)
 Create an instance for a logged-in user by name.
 
static newFromUser (User $user, $verified=false)
 Create an instance from an existing User object.
 

Detailed Description

Object holding data about a session's user.

In general, this class exists for two purposes:

  • User doesn't distinguish between "anonymous user" and "non-anonymous user that doesn't exist locally", while we do need to.
  • We also need the "verified" property described below; tracking it via another data item to SessionInfo's constructor makes things much more confusing.

A UserInfo may be "verified". This indicates that the creator knows that the request really comes from that user, whether that's by validating OAuth credentials, SSL client certificates, or by having both the user ID and token available from cookies.

An "unverified" UserInfo should be used when it's not possible to authenticate the user, e.g. the user ID cookie is set but the user Token cookie isn't. If the Token is available but doesn't match, don't return a UserInfo at all.

Since
1.27

Definition at line 54 of file UserInfo.php.

Member Function Documentation

◆ __toString()

MediaWiki\Session\UserInfo::__toString ( )

◆ getId()

MediaWiki\Session\UserInfo::getId ( )

Return the user ID.

Note
Do not use this to test for anonymous users!
Returns
int

Definition at line 149 of file UserInfo.php.

Referenced by MediaWiki\Session\UserInfo\__toString().

◆ getName()

MediaWiki\Session\UserInfo::getName ( )

Return the user name.

Returns
string|null

Definition at line 157 of file UserInfo.php.

Referenced by MediaWiki\Session\UserInfo\__toString().

◆ getToken()

MediaWiki\Session\UserInfo::getToken ( )

Return the user token.

Returns
string

Definition at line 165 of file UserInfo.php.

◆ getUser()

MediaWiki\Session\UserInfo::getUser ( )

Return a User object.

Returns
User

Definition at line 173 of file UserInfo.php.

References MediaWiki\MediaWikiServices\getInstance().

◆ isAnon()

MediaWiki\Session\UserInfo::isAnon ( )

Return whether this is an anonymous user.

Returns
bool

Definition at line 132 of file UserInfo.php.

◆ isVerified()

MediaWiki\Session\UserInfo::isVerified ( )

Return whether this represents a verified user.

Returns
bool

Definition at line 140 of file UserInfo.php.

◆ newAnonymous()

static MediaWiki\Session\UserInfo::newAnonymous ( )
static

Create an instance for an anonymous (i.e.

not logged in) user

Logged-out users are always "verified".

Returns
UserInfo

Definition at line 79 of file UserInfo.php.

Referenced by MediaWiki\Session\CookieSessionProvider\provideSessionInfo().

◆ newFromId()

static MediaWiki\Session\UserInfo::newFromId ( $id,
$verified = false )
static

Create an instance for a logged-in user by ID.

Parameters
int$idUser ID
bool$verifiedTrue if the user is verified
Returns
UserInfo

Definition at line 89 of file UserInfo.php.

References MediaWiki\MediaWikiServices\getInstance(), MediaWiki\User\User\isAnon(), MediaWiki\User\User\load(), and MediaWiki\User\User\newFromId().

Referenced by MediaWiki\Session\CookieSessionProvider\provideSessionInfo().

◆ newFromName()

static MediaWiki\Session\UserInfo::newFromName ( $name,
$verified = false )
static

Create an instance for a logged-in user by name.

Parameters
string$nameUser name (need not exist locally)
bool$verifiedTrue if the user is verified
Returns
UserInfo

Definition at line 107 of file UserInfo.php.

References MediaWiki\MediaWikiServices\getInstance(), and MediaWiki\User\User\newFromName().

◆ newFromUser()

static MediaWiki\Session\UserInfo::newFromUser ( User $user,
$verified = false )
static

Create an instance from an existing User object.

Parameters
User$user(need not exist locally)
bool$verifiedTrue if the user is verified
Returns
UserInfo

Definition at line 124 of file UserInfo.php.

Referenced by MediaWiki\Session\BotPasswordSessionProvider\newSessionForRequest().

◆ verified()

MediaWiki\Session\UserInfo::verified ( )

Return a verified version of this object.

Returns
UserInfo

Definition at line 181 of file UserInfo.php.

References MediaWiki\Session\UserInfo\verified().

Referenced by MediaWiki\Session\UserInfo\__toString(), and MediaWiki\Session\UserInfo\verified().


The documentation for this class was generated from the following file: