Интерфейс yii\rbac\ManagerInterface
| Extends | yii\rbac\CheckAccessInterface |
|---|---|
| Implemented by | yii\mongodb\rbac\MongoDbManager, yii\rbac\BaseManager, yii\rbac\DbManager, yii\rbac\PhpManager |
| Доступно с версии | 2.0 |
| Исходный код | https://github.com/yiisoft/yii2/blob/master/framework/rbac/ManagerInterface.php |
Для получения более подробной информации и инструкции по использованию ManagerInterface, см. статью руководства по безопасности и авторизации.
Публичные методы
| Метод | Описание | Определено в |
|---|---|---|
| add() | Добавляет роль, разрешение или правило в систему RBAC. | yii\rbac\ManagerInterface |
| addChild() | Добавляет элемент как дочерний к другому элементу. | yii\rbac\ManagerInterface |
| assign() | Назначает роль пользователю. | yii\rbac\ManagerInterface |
| canAddChild() | Проверяет возможность добавления дочернего элемента к родительскому. | yii\rbac\ManagerInterface |
| checkAccess() | Проверяет, имеет ли пользователь указанное разрешение. | yii\rbac\CheckAccessInterface |
| createPermission() | Создает новый объект Permission. | yii\rbac\ManagerInterface |
| createRole() | Создает новый объект Role. | yii\rbac\ManagerInterface |
| getAssignment() | Возвращает информацию об назначении роли пользователю. | yii\rbac\ManagerInterface |
| getAssignments() | Возвращает всю информацию о назначении ролей для указанного пользователя. | yii\rbac\ManagerInterface |
| getChildRoles() | Возвращает дочерние роли указанной роли. Глубина не ограничена. | yii\rbac\ManagerInterface |
| getChildren() | Возвращает дочерние разрешения и/или роли. | yii\rbac\ManagerInterface |
| getPermission() | Возвращает разрешение по имени. | yii\rbac\ManagerInterface |
| getPermissions() | Возвращает все разрешения в системе. | yii\rbac\ManagerInterface |
| getPermissionsByRole() | Возвращает все разрешения, которые представляет указанная роль. | yii\rbac\ManagerInterface |
| getPermissionsByUser() | Возвращает все разрешения, которые имеет пользователь. | yii\rbac\ManagerInterface |
| getRole() | Возвращает роль по имени. | yii\rbac\ManagerInterface |
| getRoles() | Возвращает все роли в системе. | yii\rbac\ManagerInterface |
| getRolesByUser() | Возвращает роли, назначенные пользователю с помощью assign(). | yii\rbac\ManagerInterface |
| getRule() | Возвращает правило указанного имени. | yii\rbac\ManagerInterface |
| getRules() | Возвращает все правила, доступные в системе. | yii\rbac\ManagerInterface |
| getUserIdsByRole() | Возвращает все идентификаторы пользователей, назначенные указанной роли. | yii\rbac\ManagerInterface |
| hasChild() | Возвращает значение, указывающее, существует ли дочерний элемент для родительского. | yii\rbac\ManagerInterface |
| remove() | Удаляет роль, разрешение или правило из системы RBAC. | yii\rbac\ManagerInterface |
| removeAll() | Удаляет все данные авторизации, включая роли, разрешения, правила и назначения. | yii\rbac\ManagerInterface |
| removeAllAssignments() | Удаляет все назначения ролей. | yii\rbac\ManagerInterface |
| removeAllPermissions() | Удаляет все разрешения. | yii\rbac\ManagerInterface |
| removeAllRoles() | Удаляет все роли. | yii\rbac\ManagerInterface |
| removeAllRules() | Удаляет все правила. | yii\rbac\ManagerInterface |
| removeChild() | Удаляет дочерний элемент из его родителя. | yii\rbac\ManagerInterface |
| removeChildren() | Удаляет всех детей из их родителя. | yii\rbac\ManagerInterface |
| revoke() | Отзывает роль у пользователя. | yii\rbac\ManagerInterface |
| revokeAll() | Отменяет все роли у пользователя. | yii\rbac\ManagerInterface |
| update() | Обновляет указанную роль, разрешение или правило в системе. | yii\rbac\ManagerInterface |
Подробное описание методов
add() public abstract method
Добавляет роль, разрешение или правило в систему RBAC.
| public abstract boolean add ( $object ) | ||
|---|---|---|
| $object | yii\rbac\Role|yii\rbac\Permission|yii\rbac\Rule | |
| return | boolean |
Указывает, успешно ли роль, разрешение или правило добавлено в систему |
| throws | Exception |
если проверка данных или сохранение завершились неудачей (например, имя роли или разрешения не уникально) |
addChild() public abstract method
Добавляет элемент как дочерний к другому элементу.
| public abstract boolean addChild ( $parent, $child ) | ||
|---|---|---|
| $parent | yii\rbac\Item | |
| $child | yii\rbac\Item | |
| return | boolean |
Указывает, успешно ли добавлен дочерний элемент |
| throws | yii\base\Exception |
если родительско-дочернее отношение уже существует или был обнаружен цикл. |
assign() public abstract method
Присваивает роль пользователю.
| public abstract yii\rbac\Assignment assign ( $role, $userId ) | ||
|---|---|---|
| $role | yii\rbac\Role | |
| $userId | string|integer |
Идентификатор пользователя (см. yii\web\User::$id) |
| return | yii\rbac\Assignment |
Информация о назначении роли. |
| throws | Exception |
если роль уже была назначена пользователю |
canAddChild() public abstract method (доступно с версии 2.0.8)
Проверяет возможность добавления дочернего элемента к родителю
| public abstract boolean canAddChild ( $parent, $child ) | ||
|---|---|---|
| $parent | yii\rbac\Item |
Родительский элемент |
| $child | yii\rbac\Item |
Дочерний элемент, который будет добавлен в иерархию |
| return | boolean |
Возможна ли добавка |
createPermission() public abstract method
Создаёт новый объект Permission.
Обратите внимание, что только что созданное разрешение ещё не добавлено в систему RBAC. Вы должны заполнить необходимые данные и вызвать add(), чтобы добавить его в систему.
| public abstract yii\rbac\Permission createPermission ( $name ) | ||
|---|---|---|
| $name | string |
Название разрешения |
| return | yii\rbac\Permission |
Новый объект Permission |
createRole() public abstract method
Создаёт новый объект Role.
Обратите внимание, что только что созданная роль ещё не добавлена в систему RBAC. Вы должны заполнить необходимые данные и вызвать add(), чтобы добавить её в систему.
| public abstract yii\rbac\Role createRole ( $name ) | ||
|---|---|---|
| $name | string |
Название роли |
| return | yii\rbac\Role |
Новый объект Role |
getAssignment() public abstract method
Возвращает информацию о назначении роли пользователю.
| public abstract null|yii\rbac\Assignment getAssignment ( $roleName, $userId ) | ||
|---|---|---|
| $roleName | string |
Название роли |
| $userId | string|integer |
Идентификатор пользователя (см. yii\web\User::$id) |
| return | null|yii\rbac\Assignment |
Информация о назначении. Возвращает Null, если роль не назначена пользователю. |
getAssignments() public abstract method
Возвращает всю информацию о назначении ролей для указанного пользователя.
| public abstract yii\rbac\Assignment[] getAssignments ( $userId ) | ||
|---|---|---|
| $userId | string|integer |
Идентификатор пользователя (см. yii\web\User::$id) |
| return | yii\rbac\Assignment[] |
Назначения, индексированные по именам ролей. Возвращает пустой массив, если пользователю не назначена ни одна роль. |
getChildRoles() public abstract method (доступно с версии 2.0.10)
Возвращает дочерние роли указанной роли. Глубина не ограничена.
| public abstract yii\rbac\Role[] getChildRoles ( $roleName ) | ||
|---|---|---|
| $roleName | string |
Имя роли для получения дочерних ролей |
| return | yii\rbac\Role[] |
Дочерние роли. Массив индексируется по именам ролей. Первый элемент - экземпляр самой родительской роли. |
| throws | yii\base\InvalidParamException |
если роль, получаемая по $roleName, не найдена |
getChildren() public abstract method
Возвращает дочерние разрешения и/или роли.
| public abstract yii\rbac\Item[] getChildren ( $name ) | ||
|---|---|---|
| $name | string |
Имя родителя |
| return | yii\rbac\Item[] |
Дочерние разрешения и/или роли |
getPermission() public abstract method
Возвращает разрешение по имени.
| public abstract null|yii\rbac\Permission getPermission ( $name ) | ||
|---|---|---|
| $name | string |
Имя разрешения. |
| return | null|yii\rbac\Permission |
Разрешение, соответствующее указанному имени. Возвращает Null, если такого разрешения нет. |
getPermissions() public abstract method
Возвращает все разрешения в системе.
| public abstract yii\rbac\Permission[] getPermissions ( ) | ||
|---|---|---|
| return | yii\rbac\Permission[] |
Все разрешения в системе. Массив индексируется по именам разрешений. |
getPermissionsByRole() public abstract method
Возвращает все разрешения, которые представляет указанная роль.
| public abstract yii\rbac\Permission[] getPermissionsByRole ( $roleName ) | ||
|---|---|---|
| $roleName | string |
Имя роли |
| return | yii\rbac\Permission[] |
Все разрешения, которые представляет роль. Массив индексируется по именам разрешений. |
getPermissionsByUser() public abstract method
Возвращает все разрешения, которые имеет пользователь.
| public abstract yii\rbac\Permission[] getPermissionsByUser ( $userId ) | ||
|---|---|---|
| $userId | строка|целое число |
Идентификатор пользователя (см. yii\web\User::$id) |
| return | yii\rbac\Permission[] |
Все разрешения, имеющиеся у пользователя. Массив индексируется именами разрешений. |
getRole() public abstract method
Возвращает роль с заданным именем.
| public abstract null|yii\rbac\Role getRole ( $name ) | ||
|---|---|---|
| $name | строка |
Имя роли. |
| return | null|yii\rbac\Role |
Роль, соответствующая заданному имени. Возвращает Null, если такой роли нет. |
getRoles() public abstract method
Возвращает все роли в системе.
| public abstract yii\rbac\Role[] getRoles ( ) | ||
|---|---|---|
| return | yii\rbac\Role[] |
Все роли в системе. Массив индексируется именами ролей. |
getRolesByUser() public abstract method
Возвращает роли, назначенные пользователю через assign().
Обратите внимание, что дочерние роли, которые не назначены напрямую пользователю, не будут возвращены.
| public abstract yii\rbac\Role[] getRolesByUser ( $userId ) | ||
|---|---|---|
| $userId | строка|целое число |
Идентификатор пользователя (см. yii\web\User::$id) |
| return | yii\rbac\Role[] |
Все роли, непосредственно назначенные пользователю. Массив индексируется именами ролей. |
getRule() public abstract method
Возвращает правило с заданным именем.
| public abstract null|yii\rbac\Rule getRule ( $name ) | ||
|---|---|---|
| $name | строка |
Имя правила |
| return | null|yii\rbac\Rule |
Объект правила или null, если заданное имя не соответствует правилу. |
getRules() public abstract method
Возвращает все правила, доступные в системе.
| public abstract yii\rbac\Rule[] getRules ( ) | ||
|---|---|---|
| return | yii\rbac\Rule[] |
Правила, индексированные по именам правил |
getUserIdsByRole() public abstract method (available since version 2.0.7)
Возвращает все идентификаторы пользователей, назначенные указанной роли.
| public abstract массив getUserIdsByRole ( $roleName ) | ||
|---|---|---|
| $roleName | строка | |
| return | массив |
Массив строк с идентификаторами пользователей |
hasChild() public abstract method
Возвращает значение, указывающее, существует ли дочерний элемент для родительского элемента.
| public abstract логическое значение hasChild ( $parent, $child ) | ||
|---|---|---|
| $parent | yii\rbac\Item | |
| $child | yii\rbac\Item | |
| return | логическое значение |
Является ли |
remove() public abstract method
Удаляет роль, разрешение или правило из системы RBAC.
| public abstract логическое значение remove ( $object ) | ||
|---|---|---|
| $object | yii\rbac\Role|yii\rbac\Permission|yii\rbac\Rule | |
| return | логическое значение |
Успешно ли удалено роль, разрешение или правило |
removeAll() public abstract method
Удаляет все данные авторизации, включая роли, разрешения, правила и назначения.
| public abstract void removeAll ( ) |
|---|
removeAllAssignments() public abstract method
Удаляет все назначения ролей.
| public abstract void removeAllAssignments ( ) |
|---|
removeAllPermissions() public abstract method
Удаляет все разрешения.
Все отношения родитель-потомок будут соответствующим образом скорректированы.
| public abstract void removeAllPermissions ( ) |
|---|
removeAllRoles() public abstract method
Удаляет все роли.
Все отношения родитель-потомок будут соответствующим образом скорректированы.
| public abstract void removeAllRoles ( ) |
|---|
removeAllRules() public abstract method
Удаляет все правила.
Все роли и разрешения, которые имеют правила, будут соответствующим образом скорректированы.
| public abstract void removeAllRules ( ) |
|---|
removeChild() public abstract method
Удаляет дочерний элемент из его родителя.
Примечание: элемент-потомок не удаляется. Удаляется только отношение родитель-потомок.
| public abstract логическое значение removeChild ( $parent, $child ) | ||
|---|---|---|
| $parent | yii\rbac\Item | |
| $child | yii\rbac\Item | |
| return | логическое значение |
Успешно ли выполнено удаление |
removeChildren() public abstract method
Удаляет всех потомков из их родителя.
Примечание: элементы-потомки не удаляются. Удаляются только отношения родитель-потомок.
| public abstract логическое значение removeChildren ( $parent ) | ||
|---|---|---|
| $parent | yii\rbac\Item | |
| return | логическое значение |
Успешно ли выполнено удаление |
revoke() public abstract method
Отменяет роль для пользователя.
| public abstract логическое значение revoke ( $role, $userId ) | ||
|---|---|---|
| $role | yii\rbac\Role | |
| $userId | строка|целое число |
Идентификатор пользователя (см. yii\web\User::$id) |
| return | логическое значение |
Успешно ли выполнено отмена |
revokeAll() public abstract method
Отменяет все роли для пользователя.
| public abstract логическое значение revokeAll ( $userId ) | ||
|---|---|---|
| $userId | mixed |
Идентификатор пользователя (см. yii\web\User::$id) |
| return | логическое значение |
Успешно ли выполнено отмена |
update() public abstract method
Обновляет указанную роль, разрешение или правило в системе.
| public abstract boolean update ( $name, $object ) | ||
|---|---|---|
| $name | string |
Старое имя роли, разрешения или правила |
| $object | yii\rbac\Role|yii\rbac\Permission|yii\rbac\Rule | |
| return | boolean |
Указывает, была ли успешна операция обновления |
| throws | Exception |
если проверка данных или сохранение завершились неудачей (например, имя роли или разрешения не уникально) |
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-rbac-managerinterface.html