SessionGuard
class SessionGuard implements StatefulGuard, SupportsBasicAuth (View source)
Свойства
| GuardHelpers | Эти методы обычно одинаковы для всех методов авторизации. |
| Macroable |
Свойства
| protected Authenticatable | $user | Текущий аутентифицированный пользователь. | из GuardHelpers |
| protected UserProvider | $provider | Реализация поставщика пользователей. | из GuardHelpers |
| static protected array | $macros | Зарегистрированные строковые макросы. | из Macroable |
| protected string | $name | Имя метода авторизации. Обычно "web". | |
| protected Authenticatable | $lastAttempted | Пользователь, которого мы в последний раз пытались получить. | |
| protected bool | $viaRemember | Указывает, был ли пользователь аутентифицирован с помощью куки-файла с запоминанием. | |
| protected int | $rememberDuration | Количество минут, в течение которого куки-файл «запомнить меня» должен быть действительным. | |
| protected Session | $session | Сессия, используемая методом авторизации. | |
| protected QueueingFactory | $cookie | Сервис создания куки-файлов Illuminate. | |
| protected Request | $request | Экземпляр запроса. | |
| protected Dispatcher | $events | Экземпляр диспетчера событий. | |
| protected Timebox | $timebox | Экземпляр класса Timebox. | |
| protected bool | $loggedOut | Указывает, был ли вызван метод выхода. | |
| protected bool | $recallAttempted | Указывает, была ли предпринята попытка извлечения данных пользователя по токену. |
Методы
| Authenticatable | authenticate()
Определить, авторизован ли текущий пользователь. Если нет, выбросить исключение. | from GuardHelpers |
| bool | hasUser()
Определить, содержит ли страж экземпляр пользователя. | from GuardHelpers |
| bool | check()
Определить, авторизован ли текущий пользователь. | from GuardHelpers |
| bool | guest()
Определить, является ли текущий пользователь гостем. | from GuardHelpers |
| int|string|null | id()
Получить ID текущего авторизованного пользователя. | |
| void | setUser(Authenticatable $user)
Установить текущего пользователя. | |
| UserProvider | getProvider()
Получить поставщика пользователей, используемого стражем. | from GuardHelpers |
| void | setProvider(UserProvider $provider)
Установить поставщика пользователей, используемого стражем. | from GuardHelpers |
| static void | macro(string $name, object|callable $macro)
Зарегистрировать пользовательское макро. | from Macroable |
| static void | mixin(object $mixin, bool $replace = true)
Включить другой объект в класс. | from Macroable |
| static bool | hasMacro(string $name)
Проверяет, зарегистрировано ли макро. | from Macroable |
| static void | flushMacros()
Очистить существующие макросы. | from Macroable |
| static mixed | __callStatic(string $method, array $parameters)
Динамически обрабатывать вызовы класса. | from Macroable |
| mixed | __call(string $method, array $parameters)
Динамически обрабатывать вызовы класса. | from Macroable |
| void | __construct(string $name, UserProvider $provider, Session $session, Request $request = null, Timebox $timebox = null)
Создать новый страж аутентификации. | |
| Authenticatable|null | user()
Получить текущего авторизованного пользователя. | |
| mixed | userFromRecaller(Recaller $recaller)
Извлечь пользователя из хранилища по токену куки "запомнить меня". | |
| Recaller|null | recaller()
Получить расшифрованный куки recaller для запроса. | |
| bool | once(array $credentials = [])
Выполнить вход пользователя в приложение без сессий или куки. | |
| Authenticatable|bool | onceUsingId(mixed $id)
Выполнить вход пользователя с указанным ID в приложение без сессий или куки. | |
| bool | validate(array $credentials = [])
Проверить данные пользователя. | |
| Response|null | basic(string $field = 'email', array $extraConditions = [])
Попытка аутентификации с использованием HTTP Basic Auth. | |
| Response|null | onceBasic(string $field = 'email', array $extraConditions = [])
Выполнить попытку входа в систему HTTP Basic без состояния. | |
| bool | attemptBasic(Request $request, string $field, array $extraConditions = [])
Попытка аутентификации с использованием базовой аутентификации. | |
| array | basicCredentials(Request $request, string $field)
Получить массив данных для запроса HTTP Basic. | |
| void | failedBasicResponse()
Получить ответ для базовой аутентификации. | |
| bool | attempt(array $credentials = [], bool $remember = false)
Попытка аутентификации пользователя с заданными данными. | |
| bool | attemptWhen(array $credentials = [], array|callable $callbacks = null, false $remember = false)
Попытка аутентификации пользователя с данными и дополнительными функциями обратного вызова. | |
| bool | hasValidCredentials(mixed $user, array $credentials)
Определить, соответствует ли пользователь данным. | |
| bool | shouldLogin(array|callable|null $callbacks, Authenticatable $user)
Определить, должен ли пользователь войти в систему, выполнив заданные функции обратного вызова. | |
| Authenticatable|bool | loginUsingId(mixed $id, bool $remember = false)
Выполнить вход пользователя с указанным ID в приложение. | |
| void | login(Authenticatable $user, bool $remember = false)
Выполнить вход пользователя в приложение. | |
| void | updateSession(string $id)
Обновить сессию с заданным ID. | |
| void | ensureRememberTokenIsSet(Authenticatable $user)
Создать новый токен «запомнить меня» для пользователя, если он еще не существует. | |
| void | queueRecallerCookie(Authenticatable $user)
Добавить куки recaller в хранилище куки. | |
| Cookie | createRecaller(string $value)
Создать куки «запомнить меня» для данного ID. |
| void | logout()
Выйти из приложения пользователя. | |
| void | logoutCurrentDevice()
Выйти из приложения пользователя только с текущего устройства. | |
| void | clearUserDataFromStorage()
Удалить данные пользователя из сессии и cookie. | |
| void | cycleRememberToken(Authenticatable $user)
Обновить токен «запомнить меня» для пользователя. | |
| Authenticatable|null | logoutOtherDevices(string $password, string $attribute = 'password')
Недействительность других сессий для текущего пользователя. | |
| Authenticatable|null | rehashUserPassword(string $password, string $attribute)
Перехешировать пароль текущего пользователя. | |
| void | attempting(mixed $callback)
Зарегистрировать слушатель событий попытки аутентификации. | |
| void | fireAttemptEvent(array $credentials, bool $remember = false)
Вызвать событие попытки с аргументами. | |
| void | fireValidatedEvent(Authenticatable $user)
Вызывает событие валидации, если диспетчер установлен. | |
| void | fireLoginEvent(Authenticatable $user, bool $remember = false)
Вызвать событие входа в систему, если диспетчер установлен. | |
| void | fireAuthenticatedEvent(Authenticatable $user)
Вызвать событие аутентификации, если диспетчер установлен. | |
| void | fireOtherDeviceLogoutEvent(Authenticatable $user)
Вызвать событие выхода из системы с другого устройства, если диспетчер установлен. | |
| void | fireFailedEvent(Authenticatable|null $user, array $credentials)
Вызвать событие неудачной попытки аутентификации с указанными аргументами. | |
| Authenticatable | getLastAttempted()
Получить последнего пользователя, для которого была предпринята попытка аутентификации. | |
| string | getName()
Получить уникальный идентификатор для значения сессии аутентификации. | |
| string | getRecallerName()
Получить имя cookie, используемой для хранения «recaller». | |
| bool | viaRemember()
Определить, был ли пользователь аутентифицирован с помощью cookie «запомнить меня». | |
| int | getRememberDuration()
Получить количество минут, в течение которых cookie «запомнить меня» должна быть действительной. | |
| $this | setRememberDuration(int $minutes)
Установить количество минут, в течение которых cookie «запомнить меня» должна быть действительной. | |
| QueueingFactory | getCookieJar()
Получить экземпляр создателя cookie, используемый стражем. | |
| void | setCookieJar(QueueingFactory $cookie)
Установить экземпляр создателя cookie, используемый стражем. | |
| Dispatcher | getDispatcher()
Получить экземпляр диспетчера событий. | |
| void | setDispatcher(Dispatcher $events)
Установить экземпляр диспетчера событий. | |
| Session | getSession()
Получить хранилище сессий, используемое стражем. | |
| Authenticatable|null | getUser()
Возвращает текущего кэшированного пользователя. | |
| Request | getRequest()
Получить текущий экземпляр запроса. | |
| $this | setRequest(Request $request)
Установить текущий экземпляр запроса. | |
| Timebox | getTimebox()
Получить экземпляр timebox, используемый стражем. |
Подробности
Authenticatable authenticate()
Определить, аутентифицирован ли текущий пользователь. Если нет, выбросить исключение.
bool hasUser()
Определить, имеет ли страж экземпляр пользователя.
bool check()
Определить, аутентифицирован ли текущий пользователь.
bool guest()
Определить, является ли текущий пользователь гостем.
int|string|null id()
Получить ID текущего аутентифицированного пользователя.
void setUser(Authenticatable $user)
Установить текущего пользователя.
UserProvider getProvider()
Получить поставщика пользователей, используемого стражем.
void setProvider(UserProvider $provider)
Установить поставщика пользователей, используемого стражем.
static void macro(string $name, object|callable $macro)
Зарегистрировать пользовательское макро.
static void mixin(object $mixin, bool $replace = true)
Смешать другой объект в класс.
static bool hasMacro(string $name)
Проверить, зарегистрировано ли макро.
static void flushMacros()
Очистить существующие макросы.
static mixed __callStatic(string $method, array $parameters)
Динамически обработать вызовы класса.
mixed __call(string $method, array $parameters)
Динамически обработать вызовы класса.
void __construct(string $name, UserProvider $provider, Session $session, Request $request = null, Timebox $timebox = null)
Создать новый страж аутентификации.
Authenticatable|null user()
Получить текущего аутентифицированного пользователя.
protected mixed userFromRecaller(Recaller $recaller)
Извлечь пользователя из хранилища по токену куки «Запомнить меня».
protected Recaller|null recaller()
Получить расшифрованный куки recaller для запроса.
bool once(array $credentials = [])
Авторизовать пользователя в приложении без сессий или куки.
Authenticatable|bool onceUsingId(mixed $id)
Авторизовать пользователя с заданным ID в приложении без сессий или куки.
bool validate(array $credentials = [])
Проверить учетные данные пользователя.
Response|null basic(string $field = 'email', array $extraConditions = [])
Попытка аутентификации с помощью HTTP Basic Auth.
Response|null onceBasic(string $field = 'email', array $extraConditions = [])
Выполнить попытку входа в систему HTTP Basic без состояния.
protected bool attemptBasic(Request $request, string $field, array $extraConditions = [])
Попытка аутентификации с использованием базовой аутентификации.
protected array basicCredentials(Request $request, string $field)
Получить массив учетных данных для запроса HTTP Basic.
protected void failedBasicResponse()
Получить ответ для базовой аутентификации.
bool attempt(array $credentials = [], bool $remember = false)
Попытка аутентификации пользователя с заданными учетными данными.
bool attemptWhen(array $credentials = [], array|callable $callbacks = null, false $remember = false)
Попытка аутентификации пользователя с учетными данными и дополнительными обратными вызовами.
protected bool hasValidCredentials(mixed $user, array $credentials)
Определить, соответствует ли пользователь учетным данным.
protected bool shouldLogin(array|callable|null $callbacks, Authenticatable $user)
Определить, должен ли пользователь войти в систему, выполнив заданные обратные вызовы.
Authenticatable|bool loginUsingId(mixed $id, bool $remember = false)
Войти в систему с помощью заданного идентификатора пользователя.
void login(Authenticatable $user, bool $remember = false)
Войти в систему с помощью пользователя.
protected void updateSession(string $id)
Обновить сеанс с заданным идентификатором.
protected void ensureRememberTokenIsSet(Authenticatable $user)
Создать новый токен «запомнить меня» для пользователя, если он еще не существует.
protected void queueRecallerCookie(Authenticatable $user)
Добавить куку «запомнить меня» в хранилище кук.
protected Cookie createRecaller(string $value)
Создать куки «запомнить меня» для данного ID.
void logout()
Выйти из приложения.
void logoutCurrentDevice()
Выйти из приложения только на текущем устройстве.
Этот метод не циклирует токен «запомнить меня».
protected void clearUserDataFromStorage()
Удалить данные пользователя из сеанса и кук.
protected void cycleRememberToken(Authenticatable $user)
Обновить токен «запомнить меня» для пользователя.
Authenticatable|null logoutOtherDevices(string $password, string $attribute = 'password')
Удалить другие сессии для текущего пользователя.
Приложение должно использовать middleware AuthenticateSession.
protected Authenticatable|null rehashUserPassword(string $password, string $attribute)
Перехэшировать пароль текущего пользователя.
void attempting(mixed $callback)
Зарегистрировать обработчик событий попытки аутентификации.
protected void fireAttemptEvent(array $credentials, bool $remember = false)
Вызвать событие попытки с аргументами.
protected void fireValidatedEvent(Authenticatable $user)
Вызывает событие валидации, если диспетчер установлен.
protected void fireLoginEvent(Authenticatable $user, bool $remember = false)
Вызвать событие входа, если диспетчер установлен.
protected void fireAuthenticatedEvent(Authenticatable $user)
Вызвать событие аутентификации, если диспетчер установлен.
protected void fireOtherDeviceLogoutEvent(Authenticatable $user)
Вызвать событие выхода из системы с другого устройства, если диспетчер установлен.
protected void fireFailedEvent(Authenticatable|null $user, array $credentials)
Вызвать событие неудачной попытки аутентификации с указанными аргументами.
Authenticatable getLastAttempted()
Получить последнего пользователя, для которого была попытка аутентификации.
string getName()
Получить уникальный идентификатор для значения сессии аутентификации.
string getRecallerName()
Получить имя куки, используемого для хранения "recaller".
bool viaRemember()
Определить, был ли пользователь аутентифицирован с помощью куки "запомнить меня".
protected int getRememberDuration()
Получить количество минут, в течение которых куки "запомнить меня" должен быть действителен.
$this setRememberDuration(int $minutes)
Установить количество минут, в течение которых куки "запомнить меня" должен быть действителен.
QueueingFactory getCookieJar()
Получить экземпляр создателя куки, используемый защитой.
void setCookieJar(QueueingFactory $cookie)
Установить экземпляр создателя куки, используемый защитой.
Dispatcher getDispatcher()
Получить экземпляр диспетчера событий.
void setDispatcher(Dispatcher $events)
Установить экземпляр диспетчера событий.
Session getSession()
Получить хранилище сессии, используемое защитой.
Authenticatable|null getUser()
Возвращает текущего кэшированного пользователя.
Request getRequest()
Получить текущий экземпляр запроса.
$this setRequest(Request $request)
Установить текущий экземпляр запроса.
Timebox getTimebox()
Получить экземпляр timebox, используемый охранником.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/8.x/Illuminate/Auth/SessionGuard.html