Шлюз
класс Шлюз реализует Шлюз (Просмотреть исходный код)
Трейты
| ОбработкаАвторизации |
Свойства
| protected Контейнер | $container | Экземпляр контейнера. | |
| protected callable | $userResolver | Вызываемый объект для разрешения пользователя. | |
| protected array | $abilities | Все определённые возможности. | |
| protected array | $policies | Все определённые политики. | |
| protected array | $beforeCallbacks | Все зарегистрированные обратные вызовы до выполнения. | |
| protected array | $afterCallbacks | Все зарегистрированные обратные вызовы после выполнения. | |
| protected array | $stringCallbacks | Все определённые возможности, использующие обозначение class@method. | |
| protected Ответ|null | $defaultDenialResponse | Ответ по умолчанию при отказе для шлюзов и политик. | |
| protected callable|null | $guessPolicyNamesUsingCallback | Обратный вызов, используемый для определения имён политик. |
Методы
| Response | allow(string|null $message = null, mixed $code = null)
Создать новый ответ доступа. | из HandlesAuthorization |
| Response | deny(string|null $message = null, mixed|null $code = null)
Выбрасывает исключение несанкционированного доступа. | из HandlesAuthorization |
| Response | denyWithStatus(int $status, string|null $message = null, int|null $code = null)
Отклонить с HTTP кодом состояния. | из HandlesAuthorization |
| Response | denyAsNotFound(string|null $message = null, int|null $code = null)
Отклонить с HTTP кодом состояния 404. | из HandlesAuthorization |
| void | __construct(Container $container, callable $userResolver, array $abilities = [], array $policies = [], array $beforeCallbacks = [], array $afterCallbacks = [], callable $guessPolicyNamesUsingCallback = null)
Создать новый экземпляр gate. | |
| bool | has(string $ability)
Определить, был ли определен данный доступ. | |
| Response | allowIf(Response|Closure|bool $condition, string|null $message = null, string|null $code = null)
Выполнить проверку авторизации по запросу. Выбросить исключение авторизации, если условие или обратный вызов ложны. | |
| Response | denyIf(Response|Closure|bool $condition, string|null $message = null, string|null $code = null)
Выполнить проверку авторизации по запросу. Выбросить исключение авторизации, если условие или обратный вызов истинны. | |
| Response | authorizeOnDemand(Response|Closure|bool $condition, string|null $message, string|null $code, bool $allowWhenResponseIs)
Авторизовать заданное условие или обратный вызов. | |
| $this | define(string $ability, callable|string $callback)
Определить новый доступ. | |
| $this | resource(string $name, string $class, array $abilities = null)
Определить доступы для ресурса. | |
| Closure | buildAbilityCallback(string $ability, string $callback)
Создать обратный вызов доступа для строки обратного вызова. | |
| $this | policy(string $class, string $policy)
Определить класс политики для данного типа класса. | |
| $this | before(callable $callback)
Зарегистрировать обратный вызов для запуска перед всеми проверками Gate. | |
| $this | after(callable $callback)
Зарегистрировать обратный вызов для запуска после всех проверок Gate. | |
| bool | allows(iterable|string $ability, array|mixed $arguments = [])
Определить, должны ли быть предоставлены все заданные доступы для текущего пользователя. | |
| bool | denies(iterable|string $ability, array|mixed $arguments = [])
Определить, должен ли быть запрещен любой из заданных доступов для текущего пользователя. | |
| bool | check(iterable|string $abilities, array|mixed $arguments = [])
Определить, должны ли быть предоставлены все заданные доступы для текущего пользователя. | |
| bool | any(iterable|string $abilities, array|mixed $arguments = [])
Определить, должен ли быть предоставлен хотя бы один из заданных доступов для текущего пользователя. | |
| bool | none(iterable|string $abilities, array|mixed $arguments = [])
Определить, должны ли быть запрещены все заданные доступы для текущего пользователя. | |
| Response | authorize(string $ability, array|mixed $arguments = [])
Определить, должен ли быть предоставлен данный доступ для текущего пользователя. | |
| Response | inspect(string $ability, array|mixed $arguments = [])
Проверить пользователя на наличие данного доступа. | |
| mixed | raw(string $ability, array|mixed $arguments = [])
Получить необработанный результат из обратного вызова авторизации. | |
| bool | canBeCalledWithUser(Authenticatable|null $user, Closure|string|array $class, string|null $method = null)
Определить, можно ли вызвать обратный вызов/метод с данным пользователем. | |
| bool | methodAllowsGuests(string $class, string $method)
Определить, разрешает ли данный метод класса гостей. | |
| bool | callbackAllowsGuests(callable $callback)
Определить, разрешает ли обратный вызов гостей. | |
| bool | parameterAllowsGuests(ReflectionParameter $parameter)
Определить, разрешает ли данный параметр гостей. | |
| bool | callAuthCallback(Authenticatable|null $user, string $ability, array $arguments)
Выполнить и вызвать соответствующий обратный вызов авторизации. | |
| bool|null | callBeforeCallbacks(Authenticatable|null $user, string $ability, array $arguments)
Вызвать все обратные вызовы before и вернуть результат, если он есть. | |
| bool|null | callAfterCallbacks(Authenticatable $user, string $ability, array $arguments, bool $result)
Вызвать все обратные вызовы after с результатом проверки. | |
| void | dispatchGateEvaluatedEvent(Authenticatable|null $user, string $ability, array $arguments, bool|null $result)
Отправить событие оценки gate. | |
| callable | resolveAuthCallback(Authenticatable|null $user, string $ability, array $arguments)
Выполнить вызов для данного доступа и аргументов. | |
| mixed | getPolicyFor(object|string $class)
Получить экземпляр политики для данного класса. |
| array | guessPolicyName(string $class)
Узнать имя политики для данного класса. | |
| $this | guessPolicyNamesUsing(callable $callback)
Указать обратный вызов для определения имён политик. | |
| mixed | resolvePolicy(object|string $class)
Создать экземпляр класса политики заданного типа. | |
| bool|callable | resolvePolicyCallback(Authenticatable $user, string $ability, array $arguments, mixed $policy)
Определить обратный вызов для проверки политики. | |
| mixed | callPolicyBefore(mixed $policy, Authenticatable $user, string $ability, array $arguments)
Вызвать метод «before» для данной политики, если применимо. | |
| mixed | callPolicyMethod(mixed $policy, string $method, Authenticatable|null $user, array $arguments)
Вызвать соответствующий метод данной политики. | |
| string | formatAbilityToMethod(string $ability)
Отформатировать способность политики в имя метода. | |
| Gate | forUser(Authenticatable|mixed $user)
Получить экземпляр ворот для данного пользователя. | |
| mixed | resolveUser()
Разрешить пользователя из решателя пользователей. | |
| array | abilities()
Получить все определённые способности. | |
| array | policies()
Получить все определённые политики. | |
| $this | defaultDenialResponse(Response $response)
Установить ответ по умолчанию для отказа для ворот и политик. | |
| $this | setContainer(Container $container)
Установить экземпляр контейнера, используемый воротами. |
Подробности
protected Response allow(string|null $message = null, mixed $code = null)
Создать новый ответ доступа.
protected Response deny(string|null $message = null, mixed|null $code = null)
Выбрасывает исключение «не авторизован».
Response denyWithStatus(int $status, string|null $message = null, int|null $code = null)
Отказ с кодом HTTP-статуса.
Response denyAsNotFound(string|null $message = null, int|null $code = null)
Отказ с кодом HTTP-статуса 404.
void __construct(Container $container, callable $userResolver, array $abilities = [], array $policies = [], array $beforeCallbacks = [], array $afterCallbacks = [], callable $guessPolicyNamesUsingCallback = null)
Создать новый экземпляр ворот.
bool has(string $ability)
Определить, была ли определена данная способность.
Response allowIf(Response|Closure|bool $condition, string|null $message = null, string|null $code = null)
Выполнить проверку авторизации по запросу. Бросить исключение авторизации, если условие или обратный вызов ложны.
Response denyIf(Response|Closure|bool $condition, string|null $message = null, string|null $code = null)
Выполнить проверку авторизации по запросу. Бросить исключение авторизации, если условие или обратный вызов истинны.
protected Response authorizeOnDemand(Response|Closure|bool $condition, string|null $message, string|null $code, bool $allowWhenResponseIs)
Авторизовать заданное условие или обратный вызов.
$this define(string $ability, callable|string $callback)
Определить новую возможность.
$this resource(string $name, string $class, array $abilities = null)
Определить возможности для ресурса.
protected Closure buildAbilityCallback(string $ability, string $callback)
Создать обратный вызов возможности для строки обратного вызова.
$this policy(string $class, string $policy)
Определить класс политики для заданного типа класса.
$this before(callable $callback)
Зарегистрировать обратный вызов для выполнения перед всеми проверками Gate.
$this after(callable $callback)
Зарегистрировать обратный вызов для выполнения после всех проверок Gate.
bool allows(iterable|string $ability, array|mixed $arguments = [])
Определить, должны ли все указанные возможности быть предоставлены для текущего пользователя.
bool denies(iterable|string $ability, array|mixed $arguments = [])
Определить, должны ли какие-либо из заданных возможностей быть запрещены для текущего пользователя.
bool check(iterable|string $abilities, array|mixed $arguments = [])
Определить, должны ли все заданные возможности быть предоставлены текущему пользователю.
bool any(iterable|string $abilities, array|mixed $arguments = [])
Определить, должна ли какая-либо из заданных возможностей быть предоставлена текущему пользователю.
bool none(iterable|string $abilities, array|mixed $arguments = [])
Определить, должны ли все заданные возможности быть запрещены для текущего пользователя.
Response authorize(string $ability, array|mixed $arguments = [])
Определить, должна ли данная возможность быть предоставлена текущему пользователю.
Response inspect(string $ability, array|mixed $arguments = [])
Проверить пользователя на предмет данной возможности.
mixed raw(string $ability, array|mixed $arguments = [])
Получить исходный результат из обратного вызова авторизации.
protected bool canBeCalledWithUser(Authenticatable|null $user, Closure|string|array $class, string|null $method = null)
Определить, может ли обратный вызов/метод быть вызван с заданным пользователем.
protected bool methodAllowsGuests(string $class, string $method)
Определить, разрешает ли метод данного класса доступ гостям.
protected bool callbackAllowsGuests(callable $callback)
Определить, разрешает ли обратный вызов доступ гостям.
protected bool parameterAllowsGuests(ReflectionParameter $parameter)
Определить, разрешает ли данный параметр доступ гостям.
protected bool callAuthCallback(Authenticatable|null $user, string $ability, array $arguments)
Разрешить и вызвать соответствующий обратный вызов авторизации.
protected bool|null callBeforeCallbacks(Authenticatable|null $user, string $ability, array $arguments)
Вызвать все обратные вызовы до и вернуть, если результат задан.
protected bool|null callAfterCallbacks(Authenticatable $user, string $ability, array $arguments, bool $result)
Вызвать все обратные вызовы после с результатом проверки.
protected void dispatchGateEvaluatedEvent(Authenticatable|null $user, string $ability, array $arguments, bool|null $result)
Отправить событие оценки шлюза.
protected callable resolveAuthCallback(Authenticatable|null $user, string $ability, array $arguments)
Разрешить обратный вызов для данного разрешения и аргументов.
mixed getPolicyFor(object|string $class)
Получить экземпляр политики для данного класса.
protected array guessPolicyName(string $class)
Предположить имя политики для данного класса.
$this guessPolicyNamesUsing(callable $callback)
Указать обратный вызов, который будет использоваться для предположения имен политик.
mixed resolvePolicy(object|string $class)
Создать экземпляр класса политики указанного типа.
protected bool|callable resolvePolicyCallback(Authenticatable $user, string $ability, array $arguments, mixed $policy)
Разрешить обратный вызов для проверки политики.
protected mixed callPolicyBefore(mixed $policy, Authenticatable $user, string $ability, array $arguments)
Вызвать метод "before" заданной политики, если применимо.
protected mixed callPolicyMethod(mixed $policy, string $method, Authenticatable|null $user, array $arguments)
Вызвать соответствующий метод заданной политики.
protected string formatAbilityToMethod(string $ability)
Форматировать возможность политики в имя метода.
Gate forUser(Authenticatable|mixed $user)
Получить экземпляр шлюза для данного пользователя.
protected mixed resolveUser()
Разрешить пользователя из разрешителя пользователей.
array abilities()
Получить все определенные возможности.
array policies()
Получить все определенные политики.
$this defaultDenialResponse(Response $response)
Установить ответ по умолчанию для отказа для шлюзов и политик.
$this setContainer(Container $container)
Установить экземпляр контейнера, используемый шлюзом.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/10.x/Illuminate/Auth/Access/Gate.html