Класс PhpAcl
PhpAcl реализует систему управления доступом, используя обычный конфигурационный файл PHP. Пример файла можно найти в app/Config/acl.php
- CakeObject
-
PhpAcl реализует AclInterface
Авторские права: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT License
Расположение: Cake/Controller/Component/Acl/PhpAcl.php
Резюме констант
-
booleantrue -
booleanfalse
Резюме свойств
- Объект Aco
$Acopublic - Объект Aro
$Aropublic -
$optionspublicarrayПараметры: - policy: определяет поведение метода check. Политика Deny требует явных правил allow, политика allow требует явных правил deny - config: абсолютный путь к конфигурационному файлу, содержащему правила acl (@см. app/Config/acl.php)
Резюме методов
- __construct() publicКонструктор
- allow() publicМетод-заглушка, allow нельзя выполнить с PhpAcl
- build() publicПостроить и настроить внутреннее представление ACL
- check() public
Основная функция проверки ACL. Проверяет, имеет ли ARO (объект запроса доступа) доступ к ACO (объекту управления доступом).
- deny() publicЗапретить доступ ARO к ACO
- inherit() publicМетод-заглушка
- initialize() publicМетод инициализации
Подробное описание методов
__construct()source public
__construct( )
Конструктор
Устанавливает несколько значений по умолчанию.
Переопределяет
CakeObject::__construct() allow()source public
allow( string $aro , string $aco , string $action "*" )
Метод-заглушка, allow нельзя выполнить с PhpAcl
Параметры
- строка
$aro - ARO Идентификатор запрашиваемого объекта.
- строка
$aco - ACO Идентификатор контролируемого объекта.
- строка
$actionнеобязательно "*" - Действие (по умолчанию *)
Возвращает
booleanУспех
Реализация
AclInterface::allow() build()source public
build( array $config )
Построить и настроить внутреннее представление ACL
Параметры
- массив
$config - массив конфигурации, см. документацию
Исключения
AclExceptionПри отсутствии необходимых ключей.
check()source public
check( string $aro , string $aco , string $action "*" )
Основная функция проверки ACL. Проверяет, имеет ли ARO (объект запроса доступа) доступ к ACO (объекту управления доступом).
Параметры
- строка
$aro - ARO
- строка
$aco - ACO
- строка
$actionнеобязательно "*" - Действие
Возвращает
booleantrue, если доступ предоставлен, false в противном случае
Реализация
AclInterface::check() deny()source public
deny( string $aro , string $aco , string $action "*" )
Запретить доступ ARO к ACO
Параметры
- строка
$aro - ARO Идентификатор запрашиваемого объекта.
- строка
$aco - ACO Идентификатор контролируемого объекта.
- строка
$actionнеобязательно "*" - Действие (по умолчанию *)
Возвращает
booleanУспех
Реализация
AclInterface::deny() inherit()source public
inherit( string $aro , string $aco , string $action "*" )
Метод-заглушка
Параметры
- строка
$aro - ARO Идентификатор запрашиваемого объекта.
- строка
$aco - ACO Идентификатор контролируемого объекта.
- строка
$actionнеобязательно "*" - Действие (по умолчанию *)
Возвращает
booleanУспех
Реализация
AclInterface::inherit() initialize()source public
initialize( Component $Component )
Метод инициализации
Параметры
-
Component$Component - Экземпляр компонента
Реализация
AclInterface::initialize() Наследованные методы из CakeObject
_mergeVars()source protected
_mergeVars( array $properties , string $class , boolean $normalize true )
Объединяет свойства $property этого объекта со свойствами в определении $class. Значение этого объекта для свойства будет объединено поверх значения $class'.
Это обеспечивает часть DRY-магии CakePHP. Если вы хотите отключить её, переопределите этот метод как пустую функцию.
Параметры
- массив
$properties - Название свойств для объединения.
- строка
$class - Класс для объединения свойства с ним.
- boolean
$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необязательно массив() Если массив содержит ключ "return", он устанавливает AutoRender в true. Также может использоваться для отправки данных GET/POST и именованных/переданных аргументов.
Возвращает
смешанноеЛогическое значение true или false при успехе/неудаче или содержимое отображаемого действия, если в $extra установлен ключ 'return'.
toString()source public
toString( )
Преобразование CakeObject в строку. Каждый класс может переопределять этот метод при необходимости.
Возвращает
строкаИмя этого класса
Подробное описание свойств
$optionssource
public массив
Параметры: - policy: определяет поведение метода check. Политика Deny требует явных правил allow, политика Allow требует явных правил deny - config: абсолютный путь к файлу конфигурации, содержащий правила acl (@см. app/Config/acl.php)
array()
© 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-PhpAcl.html