Spec-Zone.ru › CakePHP 2.9

Класс PhpAro

Объект запроса доступа

Пакет: Cake\Контроллер\Компонент\Acl
Авторское право: Авторское право (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: Лицензия MIT
Расположение: Cake/Controller/Component/Acl/PhpAcl.php

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

  • string

    DEFAULT_ROLE
    'Role/default'

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

  • $_tree protected
    array
    внутреннее представление ARO
  • $aliases public
    array
    псевдонимы для сопоставления
  • $map public
    array
    сопоставление внешних идентификаторов. Например, если

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

  • __construct() public
    Конструктор
  • addAlias() public
    добавляет один или несколько псевдонимов во внутреннее сопоставление. Заменяет существующие записи.
  • addRole() public
    добавляет новую запись ARO в дерево
  • build() public
    построение структуры дерева ARO для внутренней обработки
  • resolve() public

    преобразование идентификатора ARO во внутреннюю строку ARO, используя внутреннее сопоставление.

  • roles() public

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

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

__construct()исходный код public

__construct( array $aro array() , array $map array() , array $aliases array() )

Конструктор

Параметры

массив $aro необязательно массив()
данные aro
массив $map необязательно массив()
сопоставления идентификаторов
массив $aliases необязательно массив()
псевдонимы для сопоставления.

addAlias()исходный код public

addAlias( array $alias )

добавляет один или несколько псевдонимов во внутреннее сопоставление. Заменяет существующие записи.

Параметры

массив $alias
псевдоним от => до (например, Role/13 -> Role/editor)

addRole()исходный код public

addRole( array $aro )

добавляет новую запись ARO в дерево

Параметры

массив $aro
одна или несколько записей ARO

build()исходный код public

build( array $aros )

построение структуры дерева ARO для внутренней обработки

Параметры

массив $aros
массив ARO в качестве ключа и их унаследованных ARO в качестве значений

resolve()исходный код public

resolve( string|array $aro )

преобразование идентификатора ARO во внутреннюю строку ARO, используя внутреннее сопоставление.

Параметры

строка|массив $aro
идентификатор ARO (User.jeff, массив('User' => ...), и т.д)

Возвращает

строка
внутренняя строка aro (например, User/jeff, Role/default)

roles()исходный код public

roles( string|array $aro )

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

Параметры

строка|массив $aro
идентификатор ARO

Возвращает

массив
упорядоченные по приоритету ARO

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

$_treeисходный код

protected массив

внутреннее представление ARO

array()

$aliasesисходный код

public массив

псевдонимы для сопоставления

array()

$mapисходный код

public массив

сопоставление внешних идентификаторов. Например, если

массив('User' => массив('username' => 'jeff', 'role' => 'editor'))

передан как ARO одному из методов AclComponent, PhpAcl проверит, может ли он быть преобразован в User или Role, определенный в файле конфигурации.

См. также

app/Config/acl.php
array(
    'User' => 'User/username',
    'Role' => 'User/role',
)

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

Spec-Zone.ru

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