W3cubDocs

/Symfony 4.1

AbstractRememberMeServices

abstract class AbstractRememberMeServices implements RememberMeServicesInterface, LogoutHandlerInterface

Base class implementing the RememberMeServicesInterface.

Constants

COOKIE_DELIMITER

Properties

protected $logger
protected $options

Methods

__construct(array $userProviders, string $secret, string $providerKey, array $options = array(), LoggerInterface $logger = null)
string getRememberMeParameter()

Returns the parameter that is used for checking whether remember-me services have been requested.

string getSecret()
TokenInterface autoLogin(Request $request)

Implementation of RememberMeServicesInterface. Detects whether a remember-me cookie was set, decodes it, and hands it to subclasses for further processing.

logout(Request $request, Response $response, TokenInterface $token)

Implementation for LogoutHandlerInterface. Deletes the cookie.

loginFail(Request $request, Exception $exception = null)

Implementation for RememberMeServicesInterface. Deletes the cookie when an attempted authentication fails.

loginSuccess(Request $request, Response $response, TokenInterface $token)

Implementation for RememberMeServicesInterface. This is called when an authentication is successful.

UserInterface processAutoLoginCookie(array $cookieParts, Request $request)

Subclasses should validate the cookie and do any additional processing that is required. This is called from autoLogin().

onLoginFail(Request $request, Exception $exception = null)
onLoginSuccess(Request $request, Response $response, TokenInterface $token)

This is called after a user has been logged in successfully, and has requested remember-me capabilities. The implementation usually sets a cookie and possibly stores a persistent record of it.

getUserProvider($class)
array decodeCookie(string $rawCookie)

Decodes the raw cookie value.

string encodeCookie(array $cookieParts)

Encodes the cookie parts.

cancelCookie(Request $request)

Deletes the remember-me cookie.

bool isRememberMeRequested(Request $request)

Checks whether remember-me capabilities were requested.

Details

__construct(array $userProviders, string $secret, string $providerKey, array $options = array(), LoggerInterface $logger = null)

Parameters

array $userProviders
string $secret
string $providerKey
array $options
LoggerInterface $logger

Exceptions

InvalidArgumentException

string getRememberMeParameter()

Returns the parameter that is used for checking whether remember-me services have been requested.

Return Value

string

string getSecret()

Return Value

string

final TokenInterface autoLogin(Request $request)

Implementation of RememberMeServicesInterface. Detects whether a remember-me cookie was set, decodes it, and hands it to subclasses for further processing.

Parameters

Request $request

Return Value

TokenInterface

Exceptions

CookieTheftException
RuntimeException

logout(Request $request, Response $response, TokenInterface $token)

Implementation for LogoutHandlerInterface. Deletes the cookie.

Parameters

Request $request
Response $response
TokenInterface $token

final loginFail(Request $request, Exception $exception = null)

Implementation for RememberMeServicesInterface. Deletes the cookie when an attempted authentication fails.

Parameters

Request $request
Exception $exception

final loginSuccess(Request $request, Response $response, TokenInterface $token)

Implementation for RememberMeServicesInterface. This is called when an authentication is successful.

Parameters

Request $request
Response $response
TokenInterface $token

abstract protected UserInterface processAutoLoginCookie(array $cookieParts, Request $request)

Subclasses should validate the cookie and do any additional processing that is required. This is called from autoLogin().

Parameters

array $cookieParts
Request $request

Return Value

UserInterface

protected onLoginFail(Request $request, Exception $exception = null)

Parameters

Request $request
Exception $exception

abstract protected onLoginSuccess(Request $request, Response $response, TokenInterface $token)

This is called after a user has been logged in successfully, and has requested remember-me capabilities. The implementation usually sets a cookie and possibly stores a persistent record of it.

Parameters

Request $request
Response $response
TokenInterface $token

final protected getUserProvider($class)

Parameters

$class

protected array decodeCookie(string $rawCookie)

Decodes the raw cookie value.

Parameters

string $rawCookie

Return Value

array

protected string encodeCookie(array $cookieParts)

Encodes the cookie parts.

Parameters

array $cookieParts

Return Value

string

Exceptions

InvalidArgumentException When $cookieParts contain the cookie delimiter. Extending class should either remove or escape it.

protected cancelCookie(Request $request)

Deletes the remember-me cookie.

Parameters

Request $request

protected bool isRememberMeRequested(Request $request)

Checks whether remember-me capabilities were requested.

Parameters

Request $request

Return Value

bool