Spec-Zone.ru › CakePHP 2.7

Класс AclComponent

Класс-фабрика списков управления доступом.

Использует шаблон стратегии, позволяя использовать пользовательские реализации ACL с тем же интерфейсом компонента. Вы можете определить их, изменив Configure::write('Acl.classname', 'DbAcl'); в вашем файле core.php. Указанный адаптер должен реализовывать AclInterface

Объект
Extended by Компонент
Extended by AclComponent
Пакет: Cake\Controller\Component
Авторские права: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT License
Ссылка: http://book.cakephp.org/2.0/ru/core-libraries/components/access-control-lists.html
Расположен в Cake/Controller/Component/AclComponent.php

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

__constructsource public

__construct( ComponentCollection $collection , array $settings array() )

Конструктор. Вернёт экземпляр корректного класса ACL, как определено в Configure::read('Acl.classname')

Параметры

ComponentCollection $collection
Экземпляр коллекции.
массив $settings необязательный array()
Список настроек.

Исключения

CakeException
при невозможности загрузки Acl.classname.

Переопределяет

Component::__construct()

adaptersource public

adapter( AclInterface|string $adapter null )

Устанавливает или получает объект адаптера, текущий в AclComponent.

$this->Acl->adapter(); возвращает текущий класс адаптера, а $this->Acl->adapter($obj); устанавливает класс адаптера.

Вызовет метод initialize адаптера, если задан новый.

Параметры

AclInterface|строка $adapter необязательный null
Экземпляр AclInterface или имя класса для использования. (необязательно)

Возвращает

AclInterface|null
null или реализацию адаптера.

Исключения

CakeException
при несоответствии переданного класса интерфейсу AclInterface

allowsource public

allow( array|string|Model $aro , array|string|Model $aco , string $action "*" )

Функция-прослойка для ACL allow instance. Методы allow используются для предоставления объекту ARO доступа к объекту ACO.

Параметры

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

Возвращает

boolean
Успех
END_OF_DOCUMENT_MARKER

checksource public

check( array|string|Model $aro , array|string|Model $aco , string $action "*" )

Функция для проверки доступа по ACL. Методы проверки используются для определения возможности доступа ARO к ACO.

Параметры

массив|строка|Model $aro
ARO Идентификатор запрашивающего объекта. См. AclNode::node() для возможных форматов
массив|строка|Model $aco
ACO Идентификатор контролируемого объекта. См. AclNode::node() для возможных форматов
строка $action необязательный "*"
Действие (по умолчанию *)

Возвращает

boolean
Успех

denysource public

deny( array|string|Model $aro , array|string|Model $aco , string $action "*" )

Функция для отказа по ACL. Методы отказа используются для удаления разрешений ARO на доступ к ACO.

Параметры

массив|строка|Model $aro
ARO Идентификатор запрашивающего объекта. См. AclNode::node() для возможных форматов
массив|строка|Model $aco
ACO Идентификатор контролируемого объекта. См. AclNode::node() для возможных форматов
строка $action необязательный "*"
Действие (по умолчанию *)

Возвращает

boolean
Успех

grantsource public

grant( array|string|Model $aro , array|string|Model $aco , string $action "*" )

Функция для предоставления доступа по ACL. Псевдоним для AclComponent::allow()

Устаревший

3.0.0 Будет удален в версии 3.0.

Параметры

массив|строка|Model $aro
ARO Идентификатор запрашивающего объекта. См. AclNode::node() для возможных форматов
массив|строка|Model $aco
ACO Идентификатор контролируемого объекта. См. AclNode::node() для возможных форматов
строка $action необязательный "*"
Действие (по умолчанию *)

Возвращает

boolean
Успех

inheritsource public

inherit( array|string|Model $aro , array|string|Model $aco , string $action "*" )

Функция для наследования прав по ACL. Методы наследования изменяют права ARO, устанавливая их равными правам родительского объекта.

Параметры

массив|строка|Model $aro
ARO Идентификатор запрашивающего объекта. См. AclNode::node() для возможных форматов
массив|строка|Model $aco
ACO Идентификатор контролируемого объекта. См. AclNode::node() для возможных форматов
строка $action необязательный "*"
Действие (по умолчанию *)

Возвращает

boolean
Успех

revokesource public

revoke( array|string|Model $aro , array|string|Model $aco , string $action "*" )

Функция для отмены доступа по ACL. Псевдоним для AclComponent::deny()

Устаревший

3.0.0 Будет удален в версии 3.0.

Параметры

массив|строка|Model $aro
ARO Идентификатор запрашивающего объекта. См. AclNode::node() для возможных форматов
массив|строка|Model $aco
ACO Идентификатор контролируемого объекта. См. AclNode::node() для возможных форматов
строка $action необязательный "*"
Действие (по умолчанию *)

Возвращает

boolean
Успех

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

__getsource public

__get( string $name )

Магический метод для леничной загрузки $components.

Параметры

строка $name
Имя компонента для получения.

Возвращает

mixed
Объект компонента или null.

beforeRedirectsource public

beforeRedirect( Controller $controller , string|array $url , integer $status null , boolean $exit true )

Вызывается перед Controller::redirect(). Позволяет заменить URL перенаправления на новый URL. Результатом этого метода может быть массив или строка.

Если результат — массив и содержит ключ 'url', вы также можете указать:

  • status Код состояния перенаправления
  • exit Выход после перенаправления.

Если ваш ответ — строка или массив, не содержащий ключа 'url', он будет использован в качестве нового URL для перенаправления.

Параметры

Controller $controller
Контроллер с компонентами для beforeRedirect
строка|массив $url
Строка или массив URL, к которому происходит перенаправление.
целое число $status необязательный null
Код состояния перенаправления
логическое значение $exit необязательный true
Выход после перенаправления.

Возвращает

array|null
Массив или null.

Ссылка

http://book.cakephp.org/2.0/ru/controllers/components.html#Component::beforeRedirect

beforeRendersource public

beforeRender( Controller $controller )

Вызывается перед Controller::beforeRender(), перед загрузкой класса представления и перед Controller::render()

Параметры

Controller $controller
Контроллер с компонентами для beforeRender

Ссылка

http://book.cakephp.org/2.0/ru/controllers/components.html#Component::beforeRender

initializesource public

initialize( Controller $controller )

Вызывается перед Controller::beforeFilter().

Параметры

Controller $controller
Контроллер с компонентами для инициализации

Ссылка

http://book.cakephp.org/2.0/ru/controllers/components.html#Component::initialize

shutdownsource public

shutdown( Controller $controller )

Вызывается после Controller::render() и перед выводом на экран браузера.

Параметры

Controller $controller
Контроллер с компонентами для завершения

Ссылка

http://book.cakephp.org/2.0/ru/controllers/components.html#Component::shutdown

startupsource public

startup( Controller $controller )

Вызывается после Controller::beforeFilter() и перед действием контроллера

Параметры

Controller $controller
Контроллер с компонентами для запуска

Ссылка

http://book.cakephp.org/2.0/ru/controllers/components.html#Component::startup

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

_mergeVarssource protected

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

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

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

Параметры

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

_setsource protected

_set( array $properties array() )

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

Параметры

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

_stopsource protected

_stop( integer|string $status 0 )

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

Параметры

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

dispatchMethodsource public

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

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

Параметры

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

Возвращает

mixed
Результат вызова метода

logsource 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|string|массив $scope необязательно null
Область(и), в которой создается сообщение журнала. См. CakeLog::config() для получения дополнительной информации о разделах журнала.

Возвращает

boolean
Успешность записи в журнал

requestActionsource 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 и именованных/переданных аргументов.

Возвращает

mixed
Логическое значение true или false об успехе/неудачи, или содержимое рендерного действия, если в $extra установлен ключ 'return'.

toStringsource public

toString( )

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

Возвращает

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

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

$Acosource

public строка

Объект Aco

$Arosource

public строка

Объект Aro.

$_Instancesource

protected AclInterface

Экземпляр класса ACL

null

Свойства, унаследованные от Component

$_Collectionsource

protected ComponentCollection

Класс коллекции компонентов, используемый для ленивой загрузки компонентов.

$_componentMapsource

protected массив

Таблица поиска компонентов, используемая для ленивой загрузки объектов компонентов.

array()

$componentssource

public массив

Другие компоненты, используемые этим компонентом.

array()

$settingssource

public массив

Настройки для этого компонента

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.
http://api.cakephp.org/2.7/class-AclComponent.html

Spec-Zone.ru

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