public function validationStrictPassword(Validator $validator): Validator
    {
        $validator
            ->add('password', [
                'minLength' => [
                    'rule' => ['minLength', $this->getConfig('minPasswordLength')],
                    'last' => true,
                    'message' => __d('ck_tools', 'validation.user.password_min_length'),
                ],
            ])
            ->add('password', 'passwordFormat', [
                'rule' => function ($value, $context) {
                    return $this->validFormat($value, $context);
                },
                'message' => __d('ck_tools', 'validation.user.password_invalid_format'),
            ])
            ->add('password', 'passwordNoUserName', [
                'rule' => function ($value, $context) {
                    return $this->checkForUserName($value, $context);
                },
                'message' => __d('ck_tools', 'validation.user.password_user_name_not_allowed'),
            ])
            ->add('password', 'passwordUsedBefore', [
                'rule' => function ($value, $context) {
                    return $this->checkLastPasswords($value, $context);
                },
                'message' => __d('ck_tools', 'validation.user.password_used_before'),
            ]);

        return $validator;
    }