Spec-Zone.ru › CakePHP 2.9

Класс AclComponent

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

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

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

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

  • $Aco public
    string
    Объект Aco
  • $Aro public
    string
    Объект Aro.
  • $_Instance protected
    AclInterface
    Экземпляр класса ACL

Унаследованные свойства

  • _Collection, _componentMap, components, settings

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

  • __construct() public
    Конструктор. Возвращает экземпляр соответствующего класса ACL, определенного в Configure::read('Acl.classname')
  • adapter() public
    Устанавливает или получает объект адаптера, текущий в AclComponent.
  • allow() public

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

  • check() public

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

  • deny() public

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

  • grant() public
    Функция прохода для экземпляра ACL grant. Псевдоним для AclComponent::allow()
  • inherit() public

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

  • revoke() public
    Функция прохода для экземпляра ACL grant. Псевдоним для AclComponent::deny()

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

__construct()source public

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

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

Параметры

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

Исключения

CakeException
в случае, если Acl.classname не удалось загрузить.

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

Component::__construct()

adapter()source public

adapter( AclInterface|string $adapter null )

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

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

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

Параметры

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

Возвращает

AclInterface|null
Либо null, либо реализация адаптера.

Исключения

CakeException
в случае, если данный класс не является экземпляром AclInterface

allow()source public

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

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

Параметры

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

Возвращает

boolean
Успех

check()source public

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

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

Параметры

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

Возвращает

boolean
Успех

deny()source public

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

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

Параметры

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

Возвращает

boolean
Успех

grant()source public

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

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

Устаревшее

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

Параметры

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

Возвращает

boolean
Успех

inherit()source public

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

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

Параметры

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

Возвращает

boolean
Успех

revoke()source public

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

Функция прохода для экземпляра ACL grant. Псевдоним для AclComponent::deny()

Устаревшее

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

Параметры

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

Возвращает

boolean
Успех
END_OF_DOCUMENT_MARKER

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

__get()source public

__get( string $name )

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

Параметры

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

Возвращает

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

beforeRedirect()source 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
string|array $url
Строка или массив URL, на который осуществляется перенаправление.
integer $status необязательно null
Код состояния перенаправления
boolean $exit необязательно true
Выполнять ли выход после перенаправления.

Возвращает

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

Ссылка

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

beforeRender()source public

beforeRender( Controller $controller )

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

Параметры

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

Ссылка

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

initialize()source public

initialize( Controller $controller )

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

Параметры

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

Ссылка

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

shutdown()source public

shutdown( Controller $controller )

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

Параметры

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

Ссылка

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

startup()source public

startup( Controller $controller )

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

Параметры

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

Ссылка

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

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

_mergeVars()source protected

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

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

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

Параметры

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

_set()source protected

_set( array $properties array() )

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

Параметры

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

_stop()source protected

_stop( integer|string $status 0 )

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

Параметры

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

dispatchMethod()source public

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

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

Параметры

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

Возвращает

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

log()source public

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

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

Параметры

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

Области (scope), в которых создается сообщение журнала. Более подробную информацию о разделах журнала см. 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.

Параметры

string|array $url

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

array $extra необязательно array()

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

Возвращает

mixed

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


toString()source public

toString( )

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

Возвращает

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

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

$Acosource

public string

Объект Aco

END_OF_DOCUMENT_MARKER

$Arosource

public string

Объект Aro.

$_Instancesource

protected AclInterface

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

null

© 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-AclComponent.html

Spec-Zone.ru

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