class SessionGuard implements StatefulGuard, SupportsBasicAuth

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
static protected array $macros

The registered string macros.

from  Macroable
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 Session $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 $recallAttempted

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.

static void
macro(string $name, callable $macro)

Register a custom macro.

static bool
hasMacro(string $name)

Checks if macro is registered.

static mixed
__callStatic(string $method, array $parameters)

Dynamically handle calls to the class.

mixed
__call(string $method, array $parameters)

Dynamically handle calls to the class.

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

Create a new authentication guard.

user()

Get the currently authenticated user.

mixed
userFromRecaller(Recaller $recaller)

Pull a user from the repository by its "remember me" cookie token.

Recaller|null
recaller()

Get the decrypted recaller cookie for the request.

bool
once(array $credentials = [])

Log a user into the application without sessions or cookies.

bool
onceUsingId(mixed $id)

Log the given user ID 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
basicCredentials(Request $request, string $field)

Get the credential array for a HTTP Basic request.

Response
failedBasicResponse()

Get the response for basic authentication.

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

Attempt to authenticate a user using the given credentials.

bool
hasValidCredentials(mixed $user, array $credentials)

Determine if the user matches the credentials.

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

Log the given user ID into the application.

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

Log a user into the application.

void
updateSession(string $id)

Update the session with the given ID.

void
ensureRememberTokenIsSet(Authenticatable $user)

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

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
cycleRememberToken(Authenticatable $user)

Refresh the "remember me" token for the user.

void
attempting(mixed $callback)

Register an authentication attempt event listener.

void
fireAttemptEvent(array $credentials, bool $remember = false)

Fire the attempt event with the arguments.

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

Fire the login event if the dispatcher is set.

void
fireAuthenticatedEvent(Authenticatable $user)

Fire the authenticated event if the dispatcher is set.

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

Fire the failed authentication attempt event with the given arguments.

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.

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.

Details

in GuardHelpers at line 33
Authenticatable authenticate()

Determine if the current user is authenticated.

Return Value

Authenticatable

Exceptions

AuthenticationException

in GuardHelpers at line 47
bool check()

Determine if the current user is authenticated.

Return Value

bool

in GuardHelpers at line 57
bool guest()

Determine if the current user is a guest.

Return Value

bool

at line 201
int|null id()

Get the ID for the currently authenticated user.

Return Value

int|null

at line 742
void setUser(Authenticatable $user)

Set the current user.

Parameters

Authenticatable $user

Return Value

void

in Macroable at line 24
static void macro(string $name, callable $macro)

Register a custom macro.

Parameters

string $name
callable $macro

Return Value

void

in Macroable at line 35
static bool hasMacro(string $name)

Checks if macro is registered.

Parameters

string $name

Return Value

bool

in Macroable at line 49
static mixed __callStatic(string $method, array $parameters)

Dynamically handle calls to the class.

Parameters

string $method
array $parameters

Return Value

mixed

Exceptions

BadMethodCallException

in Macroable at line 71
mixed __call(string $method, array $parameters)

Dynamically handle calls to the class.

Parameters

string $method
array $parameters

Return Value

mixed

Exceptions

BadMethodCallException

at line 96
void __construct(string $name, UserProvider $provider, Session $session, Request $request = null)

Create a new authentication guard.

Parameters

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

Return Value

void

at line 112
Authenticatable|null user()

Get the currently authenticated user.

Return Value

Authenticatable|null

at line 162
protected mixed userFromRecaller(Recaller $recaller)

Pull a user from the repository by its "remember me" cookie token.

Parameters

Recaller $recaller

Return Value

mixed

at line 185
protected Recaller|null recaller()

Get the decrypted recaller cookie for the request.

Return Value

Recaller|null

at line 218
bool once(array $credentials = [])

Log a user into the application without sessions or cookies.

Parameters

array $credentials

Return Value

bool

at line 237
bool onceUsingId(mixed $id)

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

Parameters

mixed $id

Return Value

bool

at line 254
bool validate(array $credentials = [])

Validate a user's credentials.

Parameters

array $credentials

Return Value

bool

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

Attempt to authenticate using HTTP Basic Auth.

Parameters

string $field
array $extraConditions

Return Value

Response|null

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

Perform a stateless HTTP Basic login attempt.

Parameters

string $field
array $extraConditions

Return Value

Response|null

at line 308
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

at line 326
protected array basicCredentials(Request $request, string $field)

Get the credential array for a HTTP Basic request.

Parameters

Request $request
string $field

Return Value

array

at line 336
protected Response failedBasicResponse()

Get the response for basic authentication.

Return Value

Response

at line 348
bool attempt(array $credentials = [], bool $remember = false)

Attempt to authenticate a user using the given credentials.

Parameters

array $credentials
bool $remember

Return Value

bool

at line 378
protected bool hasValidCredentials(mixed $user, array $credentials)

Determine if the user matches the credentials.

Parameters

mixed $user
array $credentials

Return Value

bool

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

Log the given user ID into the application.

Parameters

mixed $id
bool $remember

Return Value

Authenticatable

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

Log a user into the application.

Parameters

Authenticatable $user
bool $remember

Return Value

void

at line 435
protected void updateSession(string $id)

Update the session with the given ID.

Parameters

string $id

Return Value

void

at line 448
protected void ensureRememberTokenIsSet(Authenticatable $user)

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

Parameters

Authenticatable $user

Return Value

void

at line 461
protected void queueRecallerCookie(Authenticatable $user)

Queue the recaller cookie into the cookie jar.

Parameters

Authenticatable $user

Return Value

void

at line 474
protected Cookie createRecaller(string $value)

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

Parameters

string $value

Return Value

Cookie

at line 484
void logout()

Log the user out of the application.

Return Value

void

at line 514
protected void clearUserDataFromStorage()

Remove the user data from the session and cookies.

Return Value

void

at line 530
protected void cycleRememberToken(Authenticatable $user)

Refresh the "remember me" token for the user.

Parameters

Authenticatable $user

Return Value

void

at line 543
void attempting(mixed $callback)

Register an authentication attempt event listener.

Parameters

mixed $callback

Return Value

void

at line 557
protected void fireAttemptEvent(array $credentials, bool $remember = false)

Fire the attempt event with the arguments.

Parameters

array $credentials
bool $remember

Return Value

void

at line 573
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

at line 586
protected void fireAuthenticatedEvent(Authenticatable $user)

Fire the authenticated event if the dispatcher is set.

Parameters

Authenticatable $user

Return Value

void

at line 600
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

at line 612
Authenticatable getLastAttempted()

Get the last user we attempted to authenticate.

Return Value

Authenticatable

at line 622
string getName()

Get a unique identifier for the auth session value.

Return Value

string

at line 632
string getRecallerName()

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

Return Value

string

at line 642
bool viaRemember()

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

Return Value

bool

at line 654
QueueingFactory getCookieJar()

Get the cookie creator instance used by the guard.

Return Value

QueueingFactory

Exceptions

RuntimeException

at line 669
void setCookieJar(QueueingFactory $cookie)

Set the cookie creator instance used by the guard.

Parameters

QueueingFactory $cookie

Return Value

void

at line 679
Dispatcher getDispatcher()

Get the event dispatcher instance.

Return Value

Dispatcher

at line 690
void setDispatcher(Dispatcher $events)

Set the event dispatcher instance.

Parameters

Dispatcher $events

Return Value

void

at line 700
Store getSession()

Get the session store used by the guard.

Return Value

Store

at line 710
UserProvider getProvider()

Get the user provider used by the guard.

Return Value

UserProvider

at line 721
void setProvider(UserProvider $provider)

Set the user provider used by the guard.

Parameters

UserProvider $provider

Return Value

void

at line 731
Authenticatable|null getUser()

Return the currently cached user.

Return Value

Authenticatable|null

at line 758
Request getRequest()

Get the current request instance.

Return Value

Request

at line 769
$this setRequest(Request $request)

Set the current request instance.

Parameters

Request $request

Return Value

$this