PHP Класс Prado\Security\TAuthorizationRule

TAuthorizationRule represents a single authorization rule. A rule is specified by an action (required), a list of users (optional), a list of roles (optional), a verb (optional), and a list of IP rules (optional). Action can be either 'allow' or 'deny'. Guest (anonymous, unauthenticated) users are represented by question mark '?'. All users (including guest users) are represented by asterisk '*'. Authenticated users are represented by '@'. Users/roles are case-insensitive. Different users/roles are separated by comma ','. Verb can be either 'get' or 'post'. If it is absent, it means both. IP rules are separated by comma ',' and can contain wild card in the rules (e.g. '192.132.23.33, 192.122.*.*')
С версии: 3.0
Автор: Qiang Xue ([email protected])
Наследование: extends Prado\TComponent
Показать файл Открыть проект

Открытые методы

Метод Описание
__construct ( $action, $users, $roles, $verb = '', $ipRules = '' ) Constructor.
getAction ( ) : string
getAuthenticatedApplied ( ) : boolean
getEveryoneApplied ( ) : boolean
getGuestApplied ( ) : boolean
getIPRules ( ) : array
getRoles ( ) : array
getUsers ( ) : array
getVerb ( ) : string
isUserAllowed ( Prado\Security\IUser $user, $verb, $ip ) : integer

Приватные методы

Метод Описание
isIpMatched ( $ip )
isRoleMatched ( $user )
isUserMatched ( $user )
isVerbMatched ( $verb )

Описание методов

__construct() публичный метод

Constructor.
public __construct ( $action, $users, $roles, $verb = '', $ipRules = '' )

getAction() публичный метод

public getAction ( ) : string
Результат string action, either 'allow' or 'deny'

getAuthenticatedApplied() публичный метод

public getAuthenticatedApplied ( ) : boolean
Результат boolean if this rule applies to authenticated users

getEveryoneApplied() публичный метод

public getEveryoneApplied ( ) : boolean
Результат boolean if this rule applies to everyone

getGuestApplied() публичный метод

public getGuestApplied ( ) : boolean
Результат boolean if this rule applies to everyone

getIPRules() публичный метод

С версии: 3.1.1
public getIPRules ( ) : array
Результат array list of IP rules.

getRoles() публичный метод

public getRoles ( ) : array
Результат array list of roles

getUsers() публичный метод

public getUsers ( ) : array
Результат array list of user IDs

getVerb() публичный метод

public getVerb ( ) : string
Результат string verb, may be empty, 'get', or 'post'.

isUserAllowed() публичный метод

public isUserAllowed ( Prado\Security\IUser $user, $verb, $ip ) : integer
$user Prado\Security\IUser
Результат integer 1 if the user is allowed, -1 if the user is denied, 0 if the rule does not apply to the user