Spec-Zone.ru › CakePHP 2.10

Класс DbAcl

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

$aco и $aro параметры могут быть разделителями путей к узлам дерева.

например controllers/Users/edit

укажет на структуру дерева, подобную

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

Конструктор

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

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 для наследования)

Возвращает

булево
Успех

Ссылка

https://book.cakephp.org/2.0/en/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 необязательно "*"
Действие (по умолчанию *)

Возвращает

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

Ссылка

https://book.cakephp.org/2.0/en/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 необязательно "*"
Действие (по умолчанию *)

Возвращает

булево
Успех

Ссылка

https://book.cakephp.org/2.0/en/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 необязательно "*"
Действие (по умолчанию *)

Возвращает

булево
Успех

См.

DbAcl::allow()

inherit()source public

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

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

Параметры

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

Возвращает

булево
Успех

Реализация

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 необязательно "*"
Действие (по умолчанию *)

Возвращает

булево
Успех

См.

DbAcl::deny()

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

_mergeVars()source protected

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

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

Это обеспечивает часть «магии DRY», предоставляемой 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 при успехе/неудаче или содержимое отрисованного действия, если в $extra установлен 'return'.


toString()source public

toString( )

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

Возвращает

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

© 2005–2017 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.10/class-DbAcl.html

Spec-Zone.ru

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