Este plugin fornece rotinas para validação de senhas em sistemas que utilizam o AuthComponent como componente de autenticação.
O plugin valida a senha enviada via formulário de adição de usuários, considerando os seguintes critérios:
- A senha pode ser deixada em branco?
- Existe um segundo campo de senha (confirmação)?
- Ambos os campos possuem valores iguais?
- A senha respeita o tamanho mínimo imposto?
- A senha respeita a quantidade mínima de caracteres alfabeticos?
- A senha respeita a quantidade mínima de caracteres numéricos?
- A senha respeita a quantidade mínima de caracteres especiais (não alfanumericos)?
- Existe alguma pré-condição para que haja validação (por exemplo, um tipo de usuário)?
- A pré-condição é válida?
- CakePHP > 2.x (o branch 1.0 suporta o CakePHP 1.3)
- O Plugin consiste de um Behavior, que é executado no callback beforeValidate. Isso quer dizer que toda vez que uma entrada for inserida, ele passará pelo Behavior para avaliação.
- O Behavior possuí algumas mensagens padrão para os erros encontrados. Essas mensagens podem ser traduzidas utilizando a extensão L10n do CakePHP.
- Os testes unitários cobrem 100% do código, utilize-os para entender melhor o funcionamento do behavior.
class User extends AppModel {
public $actsAs = array(
'PassValidator.PassValidator' => array(
'fields' => array(
'password' => 'password', // nome do campo senha
'confirm' => 'password_confirm' // nome do campo de confirmação
),
'preConditions' => array('User.type' => 'admin'), // pré-condição para validações subsequêntes
'haveConfirm' => true, // possui campo sem hash com confirmação da senha
'minLength' => 4, // pelo menos 4 caracteres
'minAlpha' => 2, // exige ao menos duas letras
'minNumbers' => 1, // exige ao menos um número
'minSpecialChars' => 0, // não exige caracter especial
'allowEmpty' => true, // não permite senha em branco
'unsetInFailure' => true // limpa o campo de senha no caso de falha na validação
)
);
}
O plugin PassValidator é Software Livre e gratuito, distribuido sob a licença MIT pela Radig Soluções em TI
Isso significa que você pode baixar o código dele e utiliza-lo da forma que bem entender, porém deve manter o crédito aos autores originais.
O PassValidator é distruído da forma que está, não contendo nenhum tipo garantia ou suporte implícito.