Mão na Massa LDAP - 1 Profissional por Máquina
Configure um serviço de Diretórios baseado no servidor OpenLDAP!
Dia 6 de Dezembro - São Paulo
Saiba mais
English for Reading and Listening
Receba por email, diariamente, mensagens contendo materiais para
leitura e audição, incluindo arquivos no formato MP3 gravados por
falantes nativos.
Saiba mais
e faça
sua inscrição
Assine a Lista Dicas-L
Receba diariamente por email as dicas
de informática publicadas neste site
Para se descadastrar, clique aqui.
Teste de Segurança da senha em JavaScript
Colaboração: André Lourenço Pedroso
Data de Publicação: 13 de Dezembro de 2006
Alguns de vocês devem ter visto no Hotmail(tm), por exemplo, um recuro onde
é feito um teste da senha, mostrando o seu nivél de segurança.
Para aqueles que acharam esse recurso interessante, mostro nesse pequeno
artigo um exemplo em JavaScript.
Os testes seguem a seguinte lógica:
- Baixa segurança - Senha que contem um tipo de caracter.
- Média segurança - Senha que tenha mais de quatro digitos e contenha no
mínimo dois tipos de caracteres.
- Alta segurança - Senha que tenha mais de sete digitos e contenha no mínimo
três tipos de caracteres diferentes.
function TestaSenha(valor) {
var d = document.getElementById('seguranca');
ERaz = /[a-z]/;
ERAZ = /[A-Z]/;
ER09 = /[0-9]/;
ERxx = /[@!#$%&*+=?|-]/;
if(valor.length == ''){
d.innerHTML = '<h4>Seguranca da senha: !</h4>';
} else {
if(valor.length < 5){
d.innerHTML = '<h4>Seguranca da senha: <font color=\'red\'>
BAIXA</font></h4>';
} else {
if(valor.length > 7 && valor.search(ERaz) != -1 && valor.search(ERAZ)
!= -1 && valor.search(ER09) != -1 || valor.length > 7 &&
valor.search(ERaz) != -1 && valor.search(ERAZ) != -1 &&
valor.search(ERxx) || valor.length > 7 && valor.search(ERaz) != -1 &&
valor.search(ERxx) != -1 && valor.search(ER09) || valor.length > 7 &&
valor.search(ERxx) != -1 && valor.search(ERAZ) != -1 &&
valor.search(ER09)){
d.innerHTML = '<h4>Seguranca da senha: <font color=\'green\'>
ALTA</font></h4>';
} else {
if(valor.search(ERaz) != -1 && valor.search(ERAZ) != -1 ||
valor.search(ERaz) != -1 && valor.search(ER09) != -1 ||
valor.search(ERaz) != -1 && valor.search(ERxx) != -1
||valor.search(ERAZ) != -1 && valor.search(ER09) != -1
||valor.search(ERAZ) != -1 && valor.search(ERxx) != -1
||valor.search(ER09) != -1 && valor.search(ERxx) != -1){
d.innerHTML = '<h4>Seguranca da senha: <font color=\'orange\'>
MEDIA</font></h4>';
} else {
d.innerHTML = '<h4>Seguranca da senha: <font color=\'red\'>
BAIXA</font></h4>';
}
}
}
}
}
Veja a relação completa dos artigos de André Lourenço Pedroso
Referências Adicionais
Referências adicionais sobre os assuntos abordados neste site podem ser encontradas em nossa Bibliografia.
Avalie esta dica
- Currently 3.02/5
- 1
- 2
- 3
- 4
- 5
Avaliação:
3.0 /5
(626 votos)
Opinião dos Leitores
Andre
13 Dez 2006, 14:39
Antonio,
Realmente está faltando a verificação nos "OR's". :)
Quanto ao '-1'. Esse é o valor de retorno da função search() caso ela não encontre o elemento especificado, caso contrario ela retornará a posição da primeira ocorrencia.
Ex:
str = "JavaScript";
srt.search("a");
- O valor a ser retornado é 1.
Espero ter ajudado de alguma forma.
Antonio
13 Dez 2006, 11:49
Alias eu tenho uma duvida se alguem puder me esclarecer, pq o teste faz valor.search() diferente de -1? Não entendi o porque do -1!
Obrigado!
Mão na Massa LDAP - 1 Profissional por Máquina
Configure um serviço de Diretórios baseado no servidor OpenLDAP!
Dia 6 de Dezembro - São Paulo
Saiba mais
Biblioteca
Redes - Guia Prático
Por Carlos. E. Morimoto
Hardware - o Guia Definitivo
Por Carlos. E. Morimoto
Kurumin 7 - Guia Prático
Por Carlos. E. Morimoto
Linux: Ferramentas Técnicas, 2ed
Por Carlos. E. Morimoto
VPN: Virtual Private Network
Por Lino Sarlo da Silva
MySQL - Guia do Programador
Por André Milani
Sistemas de Banco de Dados
Por Ramez E. Elmasri e Shamkant Navathe
Hardware PC: Guia de Aprendizagem Rápida
Por Carlos E. Morimoto
Extreme Programming
Por Vinicius Manhaes Teles
Google Hacking
Por JOHNNY LONG
Elite da Tropa
Por Luis Eduardo Soares, Andre Batista e Rodrigo Pimentel
Harry Potter e as Relíquias da Morte
Por J.K. Rowling
Manual Completo do Linux: Guia do Administrador
Por Evi Nemeth, Trent R. Hein, Garth Snyder
PHP para Quem Conhece PHP
Por Juliano Niederauer
O Conhecimento em Rede
Por Carlos Nepomuceno e Marcos Cavalcanti
Enterprise Javabeans 3.0
Por Bill Burke, Richard Monson
Redes de Computadores
Por Andrew S. Tanembaum
Marley e Eu: a Vida e o Amor ao Lado do Pior Cão do Mundo
Por John Grogan
Deus, um delírio
Por Richard Dawkins
Java: Como Programar
Por Harvey M. Deitel e Paul J. Deitel
Descobrindo o Linux: Entenda o Sistema Operacional GNU/Linux
Por Joao Eriberto Mota Filho
Use a Cabeça!: JSP & Servlets
Por Brian Bashan, Kathy Sierra, Bert Bates
1808
Por Laurentino Gomes
UML: Guia do Usuário
Por Grady Booch, James Rumbaugh e Ivar Jacobson