SessionGuard
класс SessionGuard реализует StatefulGuard, SupportsBasicAuth (Просмотреть исходный код)
Свойства
| GuardHelpers | Эти методы обычно одинаковы для всех защит. |
| Macroable |
Свойства
| protected Authenticatable|null | $user | Текущий аутентифицированный пользователь. | из GuardHelpers |
| protected UserProvider | $provider | Реализация поставщика пользователей. | из GuardHelpers |
| static protected array | $macros | Зарегистрированные строковые макросы. | из Macroable |
| string | $name | Имя защитника. Обычно "web". | |
| protected Authenticatable | $lastAttempted | Пользователь, которого мы пытались получить последним. | |
| protected bool | $viaRemember | Указывает, был ли пользователь аутентифицирован с помощью куки-файла recaller. | |
| 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()
Определить, авторизован ли текущий пользователь. В противном случае выбросить исключение. | из GuardHelpers |
| bool | hasUser()
Определить, содержит ли страж экземпляр пользователя. | из GuardHelpers |
| bool | check()
Определить, авторизован ли текущий пользователь. | из GuardHelpers |
| bool | guest()
Определить, является ли текущий пользователь гостем. | из GuardHelpers |
| int|string|null | id()
Получить ID текущего авторизованного пользователя. | |
| void | setUser(Authenticatable $user)
Установить текущего пользователя. | |
| $this | forgetUser()
Забыть текущего пользователя. | из GuardHelpers |
| UserProvider | getProvider()
Получить поставщика пользователей, используемого стражем. | из GuardHelpers |
| void | setProvider(UserProvider $provider)
Установить поставщика пользователей, используемого стражем. | из GuardHelpers |
| static void | macro(string $name, object|callable $macro)
Зарегистрировать пользовательское макро. | из Macroable |
| static void | mixin(object $mixin, bool $replace = true)
Добавить другой объект в класс. | из Macroable |
| static bool | hasMacro(string $name)
Проверка, зарегистрировано ли макро. | из Macroable |
| static void | flushMacros()
Очистить существующие макросы. | из Macroable |
| static mixed | __callStatic(string $method, array $parameters)
Динамически обработать вызовы к классу. | из Macroable |
| mixed | __call(string $method, array $parameters)
Динамически обработать вызовы к классу. | из 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|null $callbacks = null, bool $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)
Создать куки "запомнить меня" для данного идентификатора. | |
| void | logout()
Вывести пользователя из приложения. | |
| void | logoutCurrentDevice()
Вывести пользователя из приложения только на текущем устройстве. | |
| void | clearUserDataFromStorage()
Удалить данные пользователя из сессии и куки. | |
| 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()
Получить имя куки, используемой для хранения "recaller". | |
| bool | viaRemember()
Определить, был ли пользователь аутентифицирован с помощью куки "запомнить меня". | |
| 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, используемый стражем. |
Details
Authenticatable authenticate()
Определить, авторизован ли текущий пользователь. Если нет, выбросить исключение.
bool hasUser()
Определить, содержит ли страж экземпляр пользователя.
bool check()
Определить, авторизован ли текущий пользователь.
bool guest()
Определить, является ли текущий пользователь гостем.
int|string|null id()
Получить ID текущего авторизованного пользователя.
void setUser(Authenticatable $user)
Установить текущего пользователя.
$this forgetUser()
Забыть текущего пользователя.
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 = [])
Войти в систему пользователя без сессий или файлов cookie.
Authenticatable|bool onceUsingId(mixed $id)
Войти в систему пользователя с заданным ID без сессий или файлов cookie.
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 login.
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|null $callbacks = null, bool $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)
Войти в систему с помощью данного ID пользователя.
void login(Authenticatable $user, bool $remember = false)
Войти в систему с пользователем.
protected void updateSession(string $id)
Обновить сеанс с заданным ID.
protected void ensureRememberTokenIsSet(Authenticatable $user)
Создать новый токен "запомнить меня" для пользователя, если он еще не существует.
protected void queueRecallerCookie(Authenticatable $user)
Поместить cookie recaller в хранилище cookie.
protected Cookie createRecaller(string $value)
Создать cookie "запомнить меня" для данного ID.
void logout()
Выйти из приложения.
void logoutCurrentDevice()
Выйти из приложения только на текущем устройстве.
Этот метод не циклирует токен "запомнить меня".
protected void clearUserDataFromStorage()
Удалить данные пользователя из сеанса и cookie.
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)
Установить экземпляр диспетчера событий.
Сессия getSession()
Получить хранилище сессии, используемое стражем.
Авторизуемый|null getUser()
Возвратить текущего кэшированного пользователя.
Запрос getRequest()
Получить текущую инстанцию запроса.
$this setRequest(Request $request)
Установить текущую инстанцию запроса.
Блок времени getTimebox()
Получить экземпляр блока времени, используемый стражем.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/10.x/Illuminate/Auth/SessionGuard.html