‪TYPO3CMS  ‪main
TYPO3\CMS\Core\PasswordPolicy\Validator\AbstractPasswordValidator Class Reference
Inheritance diagram for TYPO3\CMS\Core\PasswordPolicy\Validator\AbstractPasswordValidator:
TYPO3\CMS\Core\PasswordPolicy\Validator\CorePasswordValidator TYPO3\CMS\Core\PasswordPolicy\Validator\NotCurrentPasswordValidator

Public Member Functions

 __construct (protected array $options=[])
 
 initializeRequirements ()
 
 validate (string $password, ?ContextData $contextData=null)
 
 getRequirements ()
 
 getErrorMessages ()
 

Protected Member Functions

 addRequirement (string $identifier, string $message)
 
 addErrorMessage (string $identifier, string $errorMessage)
 
 getLanguageService ()
 

Private Member Functions

 getClassId ()
 

Private Attributes

array $requirements = []
 
array $errorMessages = []
 

Detailed Description

Abstract password validator class, which all TYPO3 password validators must extend.

Definition at line 30 of file AbstractPasswordValidator.php.

Constructor & Destructor Documentation

◆ __construct()

TYPO3\CMS\Core\PasswordPolicy\Validator\AbstractPasswordValidator::__construct ( protected array  $options = [])

Member Function Documentation

◆ addErrorMessage()

TYPO3\CMS\Core\PasswordPolicy\Validator\AbstractPasswordValidator::addErrorMessage ( string  $identifier,
string  $errorMessage 
)
finalprotected

Adds an validation error message with the given identifier and message.

Parameters
string$identifier‪Unique identifier for error message
string$errorMessage‪Message describing the error (e.g. "The password must at least contain one digit")

Definition at line 93 of file AbstractPasswordValidator.php.

References TYPO3\CMS\Webhooks\Message\$identifier, and TYPO3\CMS\Core\PasswordPolicy\Validator\AbstractPasswordValidator\getClassId().

Referenced by TYPO3\CMS\Core\PasswordPolicy\Validator\NotCurrentPasswordValidator\isCurrentPassword(), and TYPO3\CMS\Core\PasswordPolicy\Validator\CorePasswordValidator\validate().

◆ addRequirement()

TYPO3\CMS\Core\PasswordPolicy\Validator\AbstractPasswordValidator::addRequirement ( string  $identifier,
string  $message 
)
finalprotected

Adds a requirement with the given identifier and message.

Parameters
string$identifier‪Unique identifier for requirement
string$message‪Message describing the requirement (e.g. "At least one digit")

Definition at line 73 of file AbstractPasswordValidator.php.

References TYPO3\CMS\Webhooks\Message\$identifier, and TYPO3\CMS\Core\PasswordPolicy\Validator\AbstractPasswordValidator\getClassId().

Referenced by TYPO3\CMS\Core\PasswordPolicy\Validator\NotCurrentPasswordValidator\initializeRequirements(), and TYPO3\CMS\Core\PasswordPolicy\Validator\CorePasswordValidator\initializeRequirements().

◆ getClassId()

TYPO3\CMS\Core\PasswordPolicy\Validator\AbstractPasswordValidator::getClassId ( )
private

◆ getErrorMessages()

TYPO3\CMS\Core\PasswordPolicy\Validator\AbstractPasswordValidator::getErrorMessages ( )
final

◆ getLanguageService()

◆ getRequirements()

TYPO3\CMS\Core\PasswordPolicy\Validator\AbstractPasswordValidator::getRequirements ( )
final

Returns all requirements

Definition at line 62 of file AbstractPasswordValidator.php.

◆ initializeRequirements()

TYPO3\CMS\Core\PasswordPolicy\Validator\AbstractPasswordValidator::initializeRequirements ( )

Function must be overwritten by extending classes in order to add requirements. Use $this->addRequirement(string $identifier, string $message); to add a requirement.

Reimplemented in TYPO3\CMS\Core\PasswordPolicy\Validator\CorePasswordValidator, and TYPO3\CMS\Core\PasswordPolicy\Validator\NotCurrentPasswordValidator.

Definition at line 44 of file AbstractPasswordValidator.php.

Referenced by TYPO3\CMS\Core\PasswordPolicy\Validator\AbstractPasswordValidator\__construct().

◆ validate()

TYPO3\CMS\Core\PasswordPolicy\Validator\AbstractPasswordValidator::validate ( string  $password,
?ContextData  $contextData = null 
)

Validates the given password. Function must be overwritten by extending classes. If validation is considered as failed, use addErrorMessage(string $identifier, string $errorMessage) to add an error message and return false.

Parameters
string$password‪The password to validate
ContextData | null$contextData‪ContextData for usage in additional checks (e.g. password must not contain users firstname).

Reimplemented in TYPO3\CMS\Core\PasswordPolicy\Validator\CorePasswordValidator, and TYPO3\CMS\Core\PasswordPolicy\Validator\NotCurrentPasswordValidator.

Definition at line 54 of file AbstractPasswordValidator.php.

Member Data Documentation

◆ $errorMessages

array TYPO3\CMS\Core\PasswordPolicy\Validator\AbstractPasswordValidator::$errorMessages = []
private

◆ $requirements

array TYPO3\CMS\Core\PasswordPolicy\Validator\AbstractPasswordValidator::$requirements = []
private

Definition at line 32 of file AbstractPasswordValidator.php.