NotCompromisedPasswordValidator
extends ConstraintValidator
in package
Checks if a password has been leaked in a data breach using haveibeenpwned.com's API.
Use a k-anonymity model to protect the password being searched for.
Tags
Table of Contents
Constants
- OBJECT_TO_STRING = 2
- Whether to cast objects with a "__toString()" method to strings.
- PRETTY_DATE = 1
- Whether to format {@link \DateTime} objects, either with the {@link \IntlDateFormatter} (if it is available) or as RFC-3339 dates ("Y-m-d H:i:s").
- DEFAULT_API_ENDPOINT = 'https://api.pwnedpasswords.com/range/%s'
Properties
- $context : ExecutionContextInterface
- $charset : string
- $enabled : bool
- $endpoint : string
- $httpClient : mixed
Methods
- __construct() : mixed
- initialize() : mixed
- Initializes the constraint validator.
- validate() : mixed
- {@inheritdoc}
- formatTypeOf() : string
- Returns a string representation of the type of the value.
- formatValue() : string
- Returns a string representation of the value.
- formatValues() : string
- Returns a string representation of a list of values.
Constants
OBJECT_TO_STRING
Whether to cast objects with a "__toString()" method to strings.
public
mixed
OBJECT_TO_STRING
= 2
PRETTY_DATE
Whether to format {@link \DateTime} objects, either with the {@link \IntlDateFormatter} (if it is available) or as RFC-3339 dates ("Y-m-d H:i:s").
public
mixed
PRETTY_DATE
= 1
DEFAULT_API_ENDPOINT
private
mixed
DEFAULT_API_ENDPOINT
= 'https://api.pwnedpasswords.com/range/%s'
Properties
$context
protected
ExecutionContextInterface
$context
$charset
private
string
$charset
$enabled
private
bool
$enabled
$endpoint
private
string
$endpoint
$httpClient
private
mixed
$httpClient
Methods
__construct()
public
__construct([HttpClientInterface $httpClient = null ][, string $charset = 'UTF-8' ][, bool $enabled = true ][, string $endpoint = null ]) : mixed
Parameters
- $httpClient : HttpClientInterface = null
- $charset : string = 'UTF-8'
- $enabled : bool = true
- $endpoint : string = null
initialize()
Initializes the constraint validator.
public
initialize(ExecutionContextInterface $context) : mixed
Parameters
- $context : ExecutionContextInterface
validate()
{@inheritdoc}
public
validate(mixed $value, Constraint $constraint) : mixed
Parameters
- $value : mixed
- $constraint : Constraint
Tags
formatTypeOf()
Returns a string representation of the type of the value.
protected
formatTypeOf(mixed $value) : string
This method should be used if you pass the type of a value as message parameter to a constraint violation. Note that such parameters should usually not be included in messages aimed at non-technical people.
Parameters
- $value : mixed
Return values
stringformatValue()
Returns a string representation of the value.
protected
formatValue(mixed $value[, int $format = 0 ]) : string
This method returns the equivalent PHP tokens for most scalar types (i.e. "false" for false, "1" for 1 etc.). Strings are always wrapped in double quotes ("). Objects, arrays and resources are formatted as "object", "array" and "resource". If the $format bitmask contains the PRETTY_DATE bit, then objects will be formatted with the . If it is not available, they will be formatted as RFC-3339 dates ("Y-m-d H:i:s").
Be careful when passing message parameters to a constraint violation that (may) contain objects, arrays or resources. These parameters should only be displayed for technical users. Non-technical users won't know what an "object", "array" or "resource" is and will be confused by the violation message.
Parameters
- $value : mixed
- $format : int = 0
-
A bitwise combination of the format constants in this class
Return values
stringformatValues()
Returns a string representation of a list of values.
protected
formatValues(array<string|int, mixed> $values[, int $format = 0 ]) : string
Each of the values is converted to a string using . The values are then concatenated with commas.
Parameters
- $values : array<string|int, mixed>
-
A list of values
- $format : int = 0
-
A bitwise combination of the format constants in this class