Mostrar mensagens com a etiqueta Segurança. Mostrar todas as mensagens
Mostrar mensagens com a etiqueta Segurança. Mostrar todas as mensagens

14/01/2010

Yii : Utilização pratica das Validações (Validators)

A Yii tem uma basta gama de ferramentas que permite validar a correcta introdução de dados por parte do utilizador , fica aqui alguns exemplos partidos da sua utilização:
Verifica se o campo 'nome' é único ou seja não é repetido
array('room', 'unique'), 
Verifica se o campo 'nome' tem no máximo 45 caracteres
array('nome','length','max'=>45),
Verifica se o campo 'nome' e 'morada' estão presentes
array('nome, morada', 'required'),
Valida se o campo 'id_categoria' está presente na tabela 'categoria'(model) no campo 'id'
array('id_categoria','exist','className'=>'categoria','attributeName'=>'id'),
Verifica se o campo 'id_categoria' é um numero inteiro
array('id_categoria', 'numerical', 'integerOnly'=>true), 
Verifica se o campo 'sexo' está alguns dos valores  'M' ou 'F'
array('sexo','in','range'=>array('M','F')), 
Verifica se o campo 'email' tem uma estrutura valida com um Endereço de Correio Electrónico(Email)
array('email','email'), 
Verifica se o campo 'fotografia' é um ficheiro do tipo (jpg, gif, png) sendo que este pode não existir
array('fotografia','file','types'=>'jpg, gif, png','allowEmpty'=>true), 
Quando da verificação o campo 'nib' é chamada a função 'isValidNIB' presente no model
array('nib','isValidNIB'),
function isValidNIB($attribute,$params) 
{    // Em caso de Erro :
$this->addError($attribute,$message); 
} 

Valida se o campo 'data' é do tipo data e com o formato ano(4 dígitos) - mes(2 dígitos) e dia(2 dígitos) 'yyyy-MM-dd'

array('data','type','type'=>'date','dateFormat'=>'yyyy-MM-dd','message'=>' {attribute} tem de ser uma data com o formato aaaa-mm-dd'), 

Informação complementar:


Validators (Versão da Yii) existentes:
  • CBooleanValidator,  (1.0.10)
  • CCaptchaValidator,  (1.0)
  • CCompareValidator,  (1.0)
  • CDefaultValueValidator, (1.0.2)
  • CEmailValidator, (1.0)
  • CExistValidator, (1.0.4)
  • CFileValidator, (1.0)
  • CFilterValidator, (1.0)
  • CInlineValidator, (1.0)
  • CNumberValidator, (1.0)
  • CRangeValidator, (1.0)
  • CRegularExpressionValidator, (1.0)
  • CRequiredValidator, (1.0)
  • CStringValidator, (1.0)
  • CTypeValidator, (1.0)
  • CUniqueValidator, (1.0)
  • CUrlValidator (1.0)
  • Guia de utilização da Yii
  • Cookbook
Ler mais ...

02/10/2008

Protega melhor as suas passwords

Segue aqui alguns conselhos para tornar as suas passwords mais seguras:
  1. 1. Em primeiro lugar tente sempre utilizar sempre passwords fortes de forma a não facilitar a quebra de senhas através de ataques de força bruta ou de dicionário.A escolha de uma password forte deve envolver a utilização letras maiúsculas e minúsculas números e caracteres especiais. Um dos problemas destas passwords é o facto de poderem ser dificeis de lembrar ,então a melhor maneira e utilizar uma técnica que é retirar por exemplo as primeiras letras de uma frase que sabem que não se vão esquecer tipo:

    Gosto muito Deste blog -->password: Gmdb?Sim/na0

  2. Renovar a password . Mudar a password regularmente pois dificulta muito a vida a quem esteja a tentar descobrir a password .

  3. Limite o numero de tentativas de login falhados nos sistemas de forma que a partir de um certo numero de tentativas a conta seja bloqueada .A desvantagem disto e que depois ficamos também impedidos de aceder a conta .

  4. Evitar repetir constantemente a mesma password para todas as contas ,eu sei que e uma tendência que temos mas aconselho a ter entre 3 a 5 passwords diferentes.

  5. Listar últimos logins(Entradas) bem sucedidos , desta forma podemos verificar se alguém entrou na nossa conta sem autorização.

  6. Encriptar as passwords sempre que as guardar
Conclusão : Mesmo com tudo isto não garanto 100% que não lhe vão roubar as passwords
ou entrar na sua conta mas pelo menos está muito mais protegido da maior parte dos ataques.
Ler mais ...