class SessionGuard implements StatefulGuard, SupportsBasicAuth (View source)

Traits

These methods are typically the same across all guards.

Properties

protected Authenticatable $user The currently authenticated user. from GuardHelpers
protected UserProvider $provider The user provider implementation. from GuardHelpers
protected string $name The name of the Guard. Typically "session".
protected Authenticatable $lastAttempted The user we last attempted to retrieve.
protected bool $viaRemember Indicates if the user was authenticated via a recaller cookie.
protected SessionInterface $session The session used by the guard.
$cookie The Illuminate cookie creator service.
protected Request $request The request instance.
protected Dispatcher $events The event dispatcher instance.
protected bool $loggedOut Indicates if the logout method has been called.
protected bool $tokenRetrievalAttempted Indicates if a token user retrieval has been attempted.

Methods

authenticate()

Determine if the current user is authenticated.

bool
check()

Determine if the current user is authenticated.

bool
guest()

Determine if the current user is a guest.

int|null
id()

Get the ID for the currently authenticated user.

void
setUser(Authenticatable $user)

Set the current user.

void
__construct(string $name, UserProvider $provider, SessionInterface $session, Request $request = null)

Create a new authentication guard.

user()

Get the currently authenticated user.

mixed
getUserByRecaller(string $recaller)

Pull a user from the repository by its recaller ID.

string|null
getRecaller()

Get the decrypted recaller cookie for the request.

string|null
getRecallerId()

Get the user ID from the recaller cookie.

bool
validRecaller(mixed $recaller)

Determine if the recaller cookie is in a valid format.

bool
once(array $credentials = [])

Log a user into the application without sessions or cookies.

bool
validate(array $credentials = [])

Validate a user's credentials.

Response|null
basic(string $field = 'email', array $extraConditions = [])

Attempt to authenticate using HTTP Basic Auth.

Response|null
onceBasic(string $field = 'email', array $extraConditions = [])

Perform a stateless HTTP Basic login attempt.

bool
attemptBasic(Request $request, string $field, array $extraConditions = [])

Attempt to authenticate using basic authentication.

array
getBasicCredentials(Request $request, string $field)

Get the credential array for a HTTP Basic request.

Response
getBasicResponse()

Get the response for basic authentication.

bool
attempt(array $credentials = [], bool $remember = false, bool $login = true)

Attempt to authenticate a user using the given credentials.

bool
hasValidCredentials(mixed $user, array $credentials)

Determine if the user matches the credentials.

void
fireAttemptEvent(array $credentials, bool $remember, bool $login)

Fire the attempt event with the arguments.

void
fireFailedEvent(Authenticatable|null $user, array $credentials)

Fire the failed authentication attempt event with the given arguments.

void
attempting(mixed $callback)

Register an authentication attempt event listener.

void
login(Authenticatable $user, bool $remember = false)

Log a user into the application.

void
fireLoginEvent(Authenticatable $user, bool $remember = false)

Fire the login event if the dispatcher is set.

void
updateSession(string $id)

Update the session with the given ID.

loginUsingId(mixed $id, bool $remember = false)

Log the given user ID into the application.

bool
onceUsingId(mixed $id)

Log the given user ID into the application without sessions or cookies.

void
queueRecallerCookie(Authenticatable $user)

Queue the recaller cookie into the cookie jar.

Cookie
createRecaller(string $value)

Create a "remember me" cookie for a given ID.

void
logout()

Log the user out of the application.

void
clearUserDataFromStorage()

Remove the user data from the session and cookies.

void
refreshRememberToken(Authenticatable $user)

Refresh the "remember me" token for the user.

void
createRememberTokenIfDoesntExist(Authenticatable $user)

Create a new "remember me" token for the user if one doesn't already exist.

getCookieJar()

Get the cookie creator instance used by the guard.

void
setCookieJar(QueueingFactory $cookie)

Set the cookie creator instance used by the guard.

getDispatcher()

Get the event dispatcher instance.

void
setDispatcher(Dispatcher $events)

Set the event dispatcher instance.

getSession()

Get the session store used by the guard.

getProvider()

Get the user provider used by the guard.

void
setProvider(UserProvider $provider)

Set the user provider used by the guard.

getUser()

Return the currently cached user.

Request
getRequest()

Get the current request instance.

$this
setRequest(Request $request)

Set the current request instance.

getLastAttempted()

Get the last user we attempted to authenticate.

string
getName()

Get a unique identifier for the auth session value.

string
getRecallerName()

Get the name of the cookie used to store the "recaller".

bool
viaRemember()

Determine if the user was authenticated via "remember me" cookie.

Details

Authenticatable authenticate()

Determine if the current user is authenticated.

Return Value

Authenticatable

Exceptions

AuthenticationException

bool check()

Determine if the current user is authenticated.

Return Value

bool

bool guest()

Determine if the current user is a guest.

Return Value

bool

int|null id()

Get the ID for the currently authenticated user.

Return Value

int|null

void setUser(Authenticatable $user)

Set the current user.

Parameters

Authenticatable $user

Return Value

void

void __construct(string $name, UserProvider $provider, SessionInterface $session, Request $request = null)

Create a new authentication guard.

Parameters

string $name
UserProvider $provider
SessionInterface $session
Request $request

Return Value

void

Authenticatable|null user()

Get the currently authenticated user.

Return Value

Authenticatable|null

protected mixed getUserByRecaller(string $recaller)

Pull a user from the repository by its recaller ID.

Parameters

string $recaller

Return Value

mixed

protected string|null getRecaller()

Get the decrypted recaller cookie for the request.

Return Value

string|null

protected string|null getRecallerId()

Get the user ID from the recaller cookie.

Return Value

string|null

protected bool validRecaller(mixed $recaller)

Determine if the recaller cookie is in a valid format.

Parameters

mixed $recaller

Return Value

bool

bool once(array $credentials = [])

Log a user into the application without sessions or cookies.

Parameters

array $credentials

Return Value

bool

bool validate(array $credentials = [])

Validate a user's credentials.

Parameters

array $credentials

Return Value

bool

Response|null basic(string $field = 'email', array $extraConditions = [])

Attempt to authenticate using HTTP Basic Auth.

Parameters

string $field
array $extraConditions

Return Value

Response|null

Response|null onceBasic(string $field = 'email', array $extraConditions = [])

Perform a stateless HTTP Basic login attempt.

Parameters

string $field
array $extraConditions

Return Value

Response|null

protected bool attemptBasic(Request $request, string $field, array $extraConditions = [])

Attempt to authenticate using basic authentication.

Parameters

Request $request
string $field
array $extraConditions

Return Value

bool

protected array getBasicCredentials(Request $request, string $field)

Get the credential array for a HTTP Basic request.

Parameters

Request $request
string $field

Return Value

array

protected Response getBasicResponse()

Get the response for basic authentication.

Return Value

Response

bool attempt(array $credentials = [], bool $remember = false, bool $login = true)

Attempt to authenticate a user using the given credentials.

Parameters

array $credentials
bool $remember
bool $login

Return Value

bool

protected bool hasValidCredentials(mixed $user, array $credentials)

Determine if the user matches the credentials.

Parameters

mixed $user
array $credentials

Return Value

bool

protected void fireAttemptEvent(array $credentials, bool $remember, bool $login)

Fire the attempt event with the arguments.

Parameters

array $credentials
bool $remember
bool $login

Return Value

void

protected void fireFailedEvent(Authenticatable|null $user, array $credentials)

Fire the failed authentication attempt event with the given arguments.

Parameters

Authenticatable|null $user
array $credentials

Return Value

void

void attempting(mixed $callback)

Register an authentication attempt event listener.

Parameters

mixed $callback

Return Value

void

void login(Authenticatable $user, bool $remember = false)

Log a user into the application.

Parameters

Authenticatable $user
bool $remember

Return Value

void

protected void fireLoginEvent(Authenticatable $user, bool $remember = false)

Fire the login event if the dispatcher is set.

Parameters

Authenticatable $user
bool $remember

Return Value

void

protected void updateSession(string $id)

Update the session with the given ID.

Parameters

string $id

Return Value

void

Authenticatable loginUsingId(mixed $id, bool $remember = false)

Log the given user ID into the application.

Parameters

mixed $id
bool $remember

Return Value

Authenticatable

bool onceUsingId(mixed $id)

Log the given user ID into the application without sessions or cookies.

Parameters

mixed $id

Return Value

bool

protected void queueRecallerCookie(Authenticatable $user)

Queue the recaller cookie into the cookie jar.

Parameters

Authenticatable $user

Return Value

void

protected Cookie createRecaller(string $value)

Create a "remember me" cookie for a given ID.

Parameters

string $value

Return Value

Cookie

void logout()

Log the user out of the application.

Return Value

void

protected void clearUserDataFromStorage()

Remove the user data from the session and cookies.

Return Value

void

protected void refreshRememberToken(Authenticatable $user)

Refresh the "remember me" token for the user.

Parameters

Authenticatable $user

Return Value

void

protected void createRememberTokenIfDoesntExist(Authenticatable $user)

Create a new "remember me" token for the user if one doesn't already exist.

Parameters

Authenticatable $user

Return Value

void

QueueingFactory getCookieJar()

Get the cookie creator instance used by the guard.

Return Value

QueueingFactory

Exceptions

RuntimeException

void setCookieJar(QueueingFactory $cookie)

Set the cookie creator instance used by the guard.

Parameters

QueueingFactory $cookie

Return Value

void

Dispatcher getDispatcher()

Get the event dispatcher instance.

Return Value

Dispatcher

void setDispatcher(Dispatcher $events)

Set the event dispatcher instance.

Parameters

Dispatcher $events

Return Value

void

Store getSession()

Get the session store used by the guard.

Return Value

Store

UserProvider getProvider()

Get the user provider used by the guard.

Return Value

UserProvider

void setProvider(UserProvider $provider)

Set the user provider used by the guard.

Parameters

UserProvider $provider

Return Value

void

Authenticatable|null getUser()

Return the currently cached user.

Return Value

Authenticatable|null

Request getRequest()

Get the current request instance.

Return Value

Request

$this setRequest(Request $request)

Set the current request instance.

Parameters

Request $request

Return Value

$this

Authenticatable getLastAttempted()

Get the last user we attempted to authenticate.

Return Value

Authenticatable

string getName()

Get a unique identifier for the auth session value.

Return Value

string

string getRecallerName()

Get the name of the cookie used to store the "recaller".

Return Value

string

bool viaRemember()

Determine if the user was authenticated via "remember me" cookie.

Return Value

bool