Spec-Zone.ru › CakePHP 2.9

Класс DbAcl

DbAcl реализует систему управления доступом (ACL) в базе данных. ARO и ACO структурированы в виде деревьев, а для определения разрешений используется таблица связей. Вы можете установить схему для DbAcl с помощью оболочки схемы.

Параметры $aco и $aro могут быть путями к узлам дерева, разделенными слешем.

Например, controllers/Users/edit

Указывает на структуру дерева, такую как

controllers
    Users
        edit
CakeObject
Extended by DbAcl реализует AclInterface
Пакет: Cake\Controller\Component\Acl
Авторские права: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT License
Расположение: Cake/Controller/Component/Acl/DbAcl.php

Краткое описание методов

  • __construct() public
    Конструктор
  • _getAcoKeys() protected
    Получить ключи, используемые в ACO
  • allow() public
    Разрешить $aro доступ к действиям $actions в $aco
  • check() public
    Проверяет, имеет ли заданный $aro доступ к действию $action в $aco
  • deny() public
    Запретить доступ для $aro к действию $action в $aco
  • getAclLink() public
    Получить массив связей управления доступом между заданным Aro и Aco
  • grant() public
    Разрешить $aro доступ к действиям $actions в $aco
  • inherit() public
    Позволить наследование доступа для $aro к действию $action в $aco
  • initialize() public
    Инициализирует содержащий компонент и устанавливает объекты Aro/Aco в него.
  • revoke() public
    Запретить доступ для $aro к действию $action в $aco

Подробное описание методов

__construct()source public

__construct( )

Конструктор

Overrides

CakeObject::__construct()

_getAcoKeys()source protected

_getAcoKeys( array $keys )

Получить ключи, используемые в ACO

Параметры

массив $keys
Информация о модели разрешений

Возвращает

массив
Ключи ACO

allow()source public

allow( string $aro , string $aco , string $actions "*" , integer $value 1 )

Разрешить $aro доступ к действиям $actions в $aco

Параметры

строка $aro
ARO Идентификатор запрашиваемого объекта.
строка $aco
ACO Идентификатор управляемого объекта.
строка $actions необязательно "*"
Действие (по умолчанию *)
целое число $value необязательно 1
Значение для указания типа доступа (1 — предоставить доступ, -1 — запретить, 0 — унаследовать)

Возвращает

boolean
Успех

Ссылка

http://book.cakephp.org/2.0/ru/core-libraries/components/access-control-lists.html#assigning-permissions

Реализация

AclInterface::allow()

check()source public

check( string $aro , string $aco , string $action "*" )

Проверяет, имеет ли заданный $aro доступ к действию $action в $aco

Параметры

строка $aro
ARO Идентификатор запрашиваемого объекта.
строка $aco
ACO Идентификатор управляемого объекта.
строка $action необязательно "*"
Действие (по умолчанию *)

Возвращает

boolean
Успех (true, если ARO имеет доступ к действию в ACO, false в противном случае)

Ссылка

http://book.cakephp.org/2.0/ru/core-libraries/components/access-control-lists.html#checking-permissions-the-acl-component

Реализация

AclInterface::check()

deny()source public

deny( string $aro , string $aco , string $action "*" )

Запретить доступ $aro к действию $action в $aco

Параметры

строка $aro
ARO Идентификатор запрашиваемого объекта.
строка $aco
ACO Идентификатор управляемого объекта.
строка $action необязательно "*"
Действие (по умолчанию *)

Возвращает

boolean
Успех

Ссылка

http://book.cakephp.org/2.0/ru/core-libraries/components/access-control-lists.html#assigning-permissions

Реализация

AclInterface::deny()

getAclLink()source public

getAclLink( string $aro , string $aco )

Получить массив связей управления доступом между заданным Aro и Aco

Параметры

строка $aro
ARO Идентификатор запрашиваемого объекта.
строка $aco
ACO Идентификатор управляемого объекта.

Возвращает

массив
Индексированный массив с элементами: 'aro', 'aco' и 'link'

grant()source public

grant( string $aro , string $aco , string $action "*" )

Разрешить $aro доступ к действиям $actions в $aco

Параметры

строка $aro
ARO Идентификатор запрашиваемого объекта.
строка $aco
ACO Идентификатор управляемого объекта.
строка $action необязательно "*"
Действие (по умолчанию *)

Возвращает

boolean
Успех

См.

DbAcl::allow()

inherit()source public

inherit( string $aro , string $aco , string $action "*" )

Разрешить унаследовать доступ $aro к действию $action в $aco

Параметры

строка $aro
ARO Идентификатор запрашиваемого объекта.
строка $aco
ACO Идентификатор управляемого объекта.
строка $action необязательно "*"
Действие (по умолчанию *)

Возвращает

boolean
Успех

Реализация

AclInterface::inherit()

initialize()source public

initialize( Component $component )

Инициализирует содержащий компонент и устанавливает объекты Aro/Aco в него.

Параметры

Component $component
Экземпляр AclComponent.

Реализация

AclInterface::initialize()

revoke()source public

revoke( string $aro , string $aco , string $action "*" )

Запретить доступ $aro к действию $action в $aco

Параметры

строка $aro
ARO Идентификатор запрашиваемого объекта.
строка $aco
ACO Идентификатор управляемого объекта.
строка $action необязательно "*"
Действие (по умолчанию *)

Возвращает

boolean
Успех

См.

DbAcl::deny()

Методы, унаследованные от CakeObject

_mergeVars()source protected

_mergeVars( array $properties , string $class , boolean $normalize true )

Объединяет свойства объекта $property со свойствами в определении класса $class. Значение свойства текущего класса для свойства будет объединено поверх значения свойства класса $class.

Это предоставляет часть «сухой» магии CakePHP. Если вы хотите отключить эту функцию, переопределите этот метод как пустую функцию.

Параметры

массив $properties
Имя свойств для объединения.
строка $class
Класс для объединения свойства.
логическое значение $normalize необязательно true
Установите в значение true, чтобы выполнить нормализацию свойств с помощью Hash::normalize() перед объединением.

_set()source protected

_set( array $properties array() )

Позволяет установить несколько свойств объекта в одной строке кода. Будут установлены только свойства, являющиеся частью объявления класса.

Параметры

массив $properties необязательно array()
Ассоциативный массив, содержащий свойства и соответствующие значения.

_stop()source protected

_stop( integer|string $status 0 )

Останавливает выполнение текущего скрипта. Оборачивает exit(), что упрощает тестирование.

Параметры

целое число/строка $status необязательно 0
см. http://php.net/exit для значений

dispatchMethod()source public

dispatchMethod( string $method , array $params array() )

Вызывает метод этого объекта с заданными параметрами. Предоставляет ОО-обёртку для call_user_func_array

Параметры

строка $method
Имя вызываемого метода
массив $params необязательно array()
Список параметров для использования при вызове $method

Возвращает

mixed
Возвращает результат вызова метода

log()source public

log( string $msg , integer $type LOG_ERR , null|string|array $scope null )

Удобный метод для записи сообщения в CakeLog. См. CakeLog::write() для получения дополнительной информации о записи в журналы.

Параметры

строка $msg
Сообщение журнала
целое число $type необязательно LOG_ERR
Постоянная типа ошибки. Определена в app/Config/core.php.
null|строка|массив $scope необязательно null

Область(и), в которой создается сообщение журнала. См. CakeLog::config() для получения дополнительной информации о областях ведения журналов.

Возвращает

boolean
Успех записи в журнал

requestAction()source public

requestAction( string|array $url , array $extra array() )

Вызывает метод контроллера из любого места. Может использоваться для объединения контроллеров или связывания плагинов с основным приложением. requestAction может использоваться для возврата рендеренных представлений или извлечения возвращаемого значения из действий контроллеров.

Под капотом этот метод использует Router::reverse() для преобразования параметра $url в строку URL. Вы должны использовать форматы URL, совместимые с Router::reverse().

Передача данных POST и GET

Данные POST и GET могут быть смоделированы в requestAction. Используйте $extra['url'] для данных GET. Параметр $extra['data'] позволяет моделировать данные POST.

Параметры

строка|массив $url

URL на основе строки или массива. В отличие от других массивов URL в CakePHP, этот URL не будет автоматически обрабатывать переданные и именованные аргументы в параметре $url.

массив $extra необязательно array()

Если массив содержит ключ «return», он устанавливает AutoRender в значение true. Также может использоваться для отправки данных GET/POST и именованных/переданных аргументов.

Возвращает

mixed

Булево значение true или false при успехе/неудаче, или содержимое рендеренного действия, если «return» задан в $extra.


toString()source public

toString( )

Преобразование CakeObject в строку. Каждый класс может переопределить этот метод по мере необходимости.

Возвращает

строка
Имя этого класса

© 2005–2016 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/2.9/class-DbAcl.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API