Управление доступом
класс AccessDecisionManager реализует AccessDecisionManagerInterface
AccessDecisionManager — базовый класс для всех менеджеров управления доступом, использующих избирателей.
Постоянные значения
| STRATEGY_AFFIRMATIVE | |
| STRATEGY_CONSENSUS | |
| STRATEGY_UNANIMOUS |
Методы
| __construct(array $voters = array(), string $strategy = self::STRATEGY_AFFIRMATIVE, bool $allowIfAllAbstainDecisions = false, bool $allowIfEqualGrantedDeniedDecisions = true) Конструктор. | ||
| setVoters(array $voters) Настройка избирателей. | ||
| bool | decide(TokenInterface $token, array $attributes, object $object = null) Определяет, разрешен ли доступ или нет. |
Подробности
__construct(array $voters = array(), string $strategy = self::STRATEGY_AFFIRMATIVE, bool $allowIfAllAbstainDecisions = false, bool $allowIfEqualGrantedDeniedDecisions = true)
Конструктор.
Параметры
| array | $voters | Массив экземпляров VoterInterface |
| string | $strategy | Стратегия голосования |
| bool | $allowIfAllAbstainDecisions | Разрешить доступ, если все избиратели воздержались |
| bool | $allowIfEqualGrantedDeniedDecisions | Разрешить доступ, если результаты равны |
Исключения
| InvalidArgumentException |
setVoters(array $voters)
Настройка избирателей.
Параметры
| array | $voters | Массив экземпляров VoterInterface |
bool decide(TokenInterface $token, array $attributes, object $object = null)
Определяет, разрешен ли доступ или нет.
Параметры
| TokenInterface | $token | Экземпляр TokenInterface |
| array | $attributes | Массив атрибутов, связанных с вызываемым методом |
| object | $object | Объект для защиты |
Возвращаемое значение
| bool | true, если доступ разрешен, иначе false |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/3.0/Symfony/Component/Security/Core/Authorization/AccessDecisionManager.html