MediaWiki master
MediaWiki\Permissions\SimpleAuthority Class Reference

Represents an authority that has a specific set of permissions which are specified explicitly. More...

Inherits MediaWiki\Permissions\Authority.

Collaboration diagram for MediaWiki\Permissions\SimpleAuthority:

Public Member Functions

 __construct (UserIdentity $actor, array $permissions, bool $isTemp=false)
 
 authorizeAction (string $action, PermissionStatus $status=null)
 Authorize an action.This should be used immediately before performing the action.Calling this method may have non-trivial side-effects, such as incrementing a rate limit counter.
Since
1.41
See also
isDefinitelyAllowed
authorizeRead
authorizeWrite
Parameters
string$action
PermissionStatus | null$statusaggregator for failures
Returns
bool

 
 authorizeRead (string $action, PageIdentity $target, PermissionStatus $status=null)
 Authorize read access.This should be used immediately before performing read access on restricted information.Calling this method may have non-trivial side-effects, such as incrementing a rate limit counter.
Parameters
string$action
PageIdentity$target
PermissionStatus | null$statusaggregator for failures
Returns
bool If the user can perform the action
See also
authorizeAction
authorizeWrite
definitelyCan

 
 authorizeWrite (string $action, PageIdentity $target, PermissionStatus $status=null)
 Authorize write access.This should be used immediately before updating persisted information.Calling this method may have non-trivial side-effects, such as incrementing a rate limit counter.
Parameters
string$action
PageIdentity$target
PermissionStatus | null$statusaggregator for failures
Returns
bool If the user can perform the action
See also
authorizeAction
authorizeRead
definitelyCan

 
 definitelyCan (string $action, PageIdentity $target, PermissionStatus $status=null)
 Checks whether this authority can perform the given action on the given target page.This method performs a thorough check, but does not protect against race conditions. It is intended to be used when a user is intending to perform an action, but has not yet committed to it. For example, when a user goes to the edit page of an article, this method may be used to determine whether the user should be presented with a warning and a read-only view instead.This method may apply rate limit checks and evaluate user blocks.
See also
probablyCan
isDefinitelyAllowed
Parameters
string$action
PageIdentity$target
PermissionStatus | null$statusaggregator for failures
Returns
bool

 
 getBlock (int $freshness=IDBAccessObject::READ_NORMAL)
 Returns any user block affecting the Authority.
Parameters
int$freshnessIndicates whether slightly stale data is acceptable in, exchange for a fast response.
Returns
?Block
Since
1.37

 
 getUser ()
 Returns the performer of the actions associated with this authority.Actions performed under this authority should generally be attributed to the user identity returned by this method.
Returns
UserIdentity

 
 isAllowed (string $permission, PermissionStatus $status=null)
 Checks whether this authority has the given permission in general.For some permissions, exceptions may exist, both positive and negative, on a per-target basis. This method offers a fast, lightweight check, but may produce false positives. It is intended for determining which UI elements should be offered to the user.This method will not apply rate limit checks or evaluate user blocks.
Parameters
string$permission
PermissionStatus | null$status
Returns
bool
See also
isDefinitelyAllowed
probablyCan

 
 isAllowedAll (... $permissions)
 Checks whether this authority has any of the given permissions in general.Implementations must ensure that this method returns false if isAllowed would return false for any of the given permissions. Calling isAllowedAll() with one parameter must be equivalent to calling isAllowed(). Calling isAllowedAny() with no parameter is not allowed.
See also
isAllowed
Parameters
string...$permissions Permissions to test. At least one must be given.
Returns
bool True if the user is allowed to perform all of the given actions

 
 isAllowedAny (... $permissions)
 Checks whether this authority has any of the given permissions in general.Implementations must ensure that this method returns true if isAllowed would return true for any of the given permissions. Calling isAllowedAny() with one parameter must be equivalent to calling isAllowed(). Calling isAllowedAny() with no parameter is not allowed.
See also
isAllowed
Parameters
string...$permissions Permissions to test. At least one must be given.
Returns
bool True if user is allowed to perform any of the given actions

 
 isDefinitelyAllowed (string $action, PermissionStatus $status=null)
 Checks whether this authority is allowed to perform the given action.This method performs a thorough check, but does not protect against race conditions. It is intended to be used when a user is intending to perform an action, but has not yet committed to it. For example, when a user visits their preferences page, this method may be used to determine whether the user should have the option to change their email address.This method may apply rate limit checks and evaluate user blocks.
Since
1.41
See also
isAllowed
definitelyCan
Parameters
string$action
PermissionStatus | null$statusaggregator for failures
Returns
bool

 
 isNamed ()
 Is the user a normal non-temporary registered user?
 
 isRegistered ()
 Get whether the user is registered.
 
 isTemp ()
 Is the user an autocreated temporary user?
 
 probablyCan (string $action, PageIdentity $target, PermissionStatus $status=null)
 Checks whether this authority can probably perform the given action on the given target page.This method offers a fast, lightweight check, but may produce false positives. It is intended for determining which UI elements should be offered to the user. This method will not apply rate limit checks or evaluate user blocks.
See also
definitelyCan
isAllowed
Parameters
string$action
PageIdentity$target
PermissionStatus | null$statusaggregator for failures
Returns
bool

 

Detailed Description

Represents an authority that has a specific set of permissions which are specified explicitly.

This is useful for testing, but may also be used to represent a fixed set of permissions to be used in some context, e.g. in an asynchronous job.

Since
1.36
Stability: newable

Definition at line 38 of file SimpleAuthority.php.

Constructor & Destructor Documentation

◆ __construct()

MediaWiki\Permissions\SimpleAuthority::__construct ( UserIdentity $actor,
array $permissions,
bool $isTemp = false )
Stability: stable
to call
Parameters
UserIdentity$actor
string[]$permissionsA list of permissions to grant to the actor
bool$isTempWhether the user is auto-created (since 1.39)

Definition at line 55 of file SimpleAuthority.php.

References MediaWiki\Permissions\SimpleAuthority\isTemp().

Member Function Documentation

◆ authorizeAction()

MediaWiki\Permissions\SimpleAuthority::authorizeAction ( string $action,
PermissionStatus $status = null )

Authorize an action.This should be used immediately before performing the action.Calling this method may have non-trivial side-effects, such as incrementing a rate limit counter.

Since
1.41
See also
isDefinitelyAllowed
authorizeRead
authorizeWrite
Parameters
string$action
PermissionStatus | null$statusaggregator for failures
Returns
bool

Implements MediaWiki\Permissions\Authority.

Definition at line 146 of file SimpleAuthority.php.

◆ authorizeRead()

MediaWiki\Permissions\SimpleAuthority::authorizeRead ( string $action,
PageIdentity $target,
PermissionStatus $status = null )

Authorize read access.This should be used immediately before performing read access on restricted information.Calling this method may have non-trivial side-effects, such as incrementing a rate limit counter.

Parameters
string$action
PageIdentity$target
PermissionStatus | null$statusaggregator for failures
Returns
bool If the user can perform the action
See also
authorizeAction
authorizeWrite
definitelyCan

Implements MediaWiki\Permissions\Authority.

Definition at line 151 of file SimpleAuthority.php.

◆ authorizeWrite()

MediaWiki\Permissions\SimpleAuthority::authorizeWrite ( string $action,
PageIdentity $target,
PermissionStatus $status = null )

Authorize write access.This should be used immediately before updating persisted information.Calling this method may have non-trivial side-effects, such as incrementing a rate limit counter.

Parameters
string$action
PageIdentity$target
PermissionStatus | null$statusaggregator for failures
Returns
bool If the user can perform the action
See also
authorizeAction
authorizeRead
definitelyCan

Implements MediaWiki\Permissions\Authority.

Definition at line 160 of file SimpleAuthority.php.

◆ definitelyCan()

MediaWiki\Permissions\SimpleAuthority::definitelyCan ( string $action,
PageIdentity $target,
PermissionStatus $status = null )

Checks whether this authority can perform the given action on the given target page.This method performs a thorough check, but does not protect against race conditions. It is intended to be used when a user is intending to perform an action, but has not yet committed to it. For example, when a user goes to the edit page of an article, this method may be used to determine whether the user should be presented with a warning and a read-only view instead.This method may apply rate limit checks and evaluate user blocks.

See also
probablyCan
isDefinitelyAllowed
Parameters
string$action
PageIdentity$target
PermissionStatus | null$statusaggregator for failures
Returns
bool

Implements MediaWiki\Permissions\Authority.

Definition at line 132 of file SimpleAuthority.php.

◆ getBlock()

MediaWiki\Permissions\SimpleAuthority::getBlock ( int $freshness = IDBAccessObject::READ_NORMAL)

Returns any user block affecting the Authority.

Parameters
int$freshnessIndicates whether slightly stale data is acceptable in, exchange for a fast response.
Returns
?Block
Since
1.37

Implements MediaWiki\Permissions\Authority.

Definition at line 71 of file SimpleAuthority.php.

◆ getUser()

MediaWiki\Permissions\SimpleAuthority::getUser ( )

Returns the performer of the actions associated with this authority.Actions performed under this authority should generally be attributed to the user identity returned by this method.

Returns
UserIdentity

Implements MediaWiki\Permissions\Authority.

Definition at line 66 of file SimpleAuthority.php.

◆ isAllowed()

MediaWiki\Permissions\SimpleAuthority::isAllowed ( string $permission,
PermissionStatus $status = null )

Checks whether this authority has the given permission in general.For some permissions, exceptions may exist, both positive and negative, on a per-target basis. This method offers a fast, lightweight check, but may produce false positives. It is intended for determining which UI elements should be offered to the user.This method will not apply rate limit checks or evaluate user blocks.

Parameters
string$permission
PermissionStatus | null$status
Returns
bool
See also
isDefinitelyAllowed
probablyCan

Implements MediaWiki\Permissions\Authority.

Definition at line 76 of file SimpleAuthority.php.

◆ isAllowedAll()

MediaWiki\Permissions\SimpleAuthority::isAllowedAll ( $permissions)

Checks whether this authority has any of the given permissions in general.Implementations must ensure that this method returns false if isAllowed would return false for any of the given permissions. Calling isAllowedAll() with one parameter must be equivalent to calling isAllowed(). Calling isAllowedAny() with no parameter is not allowed.

See also
isAllowed
Parameters
string...$permissions Permissions to test. At least one must be given.
Returns
bool True if the user is allowed to perform all of the given actions

Implements MediaWiki\Permissions\Authority.

Definition at line 96 of file SimpleAuthority.php.

◆ isAllowedAny()

MediaWiki\Permissions\SimpleAuthority::isAllowedAny ( $permissions)

Checks whether this authority has any of the given permissions in general.Implementations must ensure that this method returns true if isAllowed would return true for any of the given permissions. Calling isAllowedAny() with one parameter must be equivalent to calling isAllowed(). Calling isAllowedAny() with no parameter is not allowed.

See also
isAllowed
Parameters
string...$permissions Permissions to test. At least one must be given.
Returns
bool True if user is allowed to perform any of the given actions

Implements MediaWiki\Permissions\Authority.

Definition at line 81 of file SimpleAuthority.php.

◆ isDefinitelyAllowed()

MediaWiki\Permissions\SimpleAuthority::isDefinitelyAllowed ( string $action,
PermissionStatus $status = null )

Checks whether this authority is allowed to perform the given action.This method performs a thorough check, but does not protect against race conditions. It is intended to be used when a user is intending to perform an action, but has not yet committed to it. For example, when a user visits their preferences page, this method may be used to determine whether the user should have the option to change their email address.This method may apply rate limit checks and evaluate user blocks.

Since
1.41
See also
isAllowed
definitelyCan
Parameters
string$action
PermissionStatus | null$statusaggregator for failures
Returns
bool

Implements MediaWiki\Permissions\Authority.

Definition at line 141 of file SimpleAuthority.php.

◆ isNamed()

MediaWiki\Permissions\SimpleAuthority::isNamed ( )

Is the user a normal non-temporary registered user?

Since
1.39
Returns
bool

Implements MediaWiki\Permissions\Authority.

Definition at line 176 of file SimpleAuthority.php.

◆ isRegistered()

MediaWiki\Permissions\SimpleAuthority::isRegistered ( )

Get whether the user is registered.

Returns
bool
Since
1.39

Implements MediaWiki\Permissions\Authority.

Definition at line 168 of file SimpleAuthority.php.

◆ isTemp()

MediaWiki\Permissions\SimpleAuthority::isTemp ( )

Is the user an autocreated temporary user?

Since
1.39
Returns
bool

Implements MediaWiki\Permissions\Authority.

Definition at line 172 of file SimpleAuthority.php.

Referenced by MediaWiki\Permissions\SimpleAuthority\__construct().

◆ probablyCan()

MediaWiki\Permissions\SimpleAuthority::probablyCan ( string $action,
PageIdentity $target,
PermissionStatus $status = null )

Checks whether this authority can probably perform the given action on the given target page.This method offers a fast, lightweight check, but may produce false positives. It is intended for determining which UI elements should be offered to the user. This method will not apply rate limit checks or evaluate user blocks.

See also
definitelyCan
isAllowed
Parameters
string$action
PageIdentity$target
PermissionStatus | null$statusaggregator for failures
Returns
bool

Implements MediaWiki\Permissions\Authority.

Definition at line 123 of file SimpleAuthority.php.


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