Pergunta

Eu quero ter um formulário de login em um site de caridade Eu estou construindo (é para um amigo, e estou aprendendo em movimento), e quero saber quais idiomas / software devo aprender a criar bancos de dados para o usuárioLogins e informações?Nota: Tem que ser seguro e relativamente simples de aprender para alguém com experiência de programação moderada.

Atualização: Eu entendo que o CMSS oferece boas ferramentas para logins etc. Mas eu quero fazer isso sozinho.

Foi útil?

Solução

A coisa mais simples que você poderia fazer é hash e aplicar um sal às suas senhas antes de inseri-las no banco de dados. "The Wicked Flea" tem uma boa resposta em outra questão Aqui .

Você já pensou em agarrar um pouco a prateleira? O mais decente CMS deve conter toda a funcionalidade que você precisa para um site de caridade simples. Também lhe daria uma solução sólida para o problema do seu formulário de login.

editar

Quanto a que linguagem usar. Realmente não é muito importante, desde que você esteja confortável com isso e disposto a colocar tempo e esforço. Isso mostra em seu perfil que você está procurando aprender PHP. Parece que escrever um formulário de login no PHP seria um bom ponto de partida. Como para uma extremidade de banco de dados. Mais uma vez, isso realmente não importa. Apenas por favor, não use o MS Access. A maioria dos desenvolvedores PHP (assumindo) parece usar o MySQL, pois é geralmente o que está incluído com um host do PHP.

Sobre segurança, hash e adicionar um sal à sua senha é sobre a coisa mais fácil que você pode fazer. Você poderia fazer algo assim:

  • clica no usuário Inscreva-se link
  • trazer o formulário de inscrição usando SSL
  • Quando o usuário clica no botão Enviar
  • Hash Senha. Adicione sal. Loja no banco de dados. Adicionar um sal à sua senha de hash impedirá que seja atacado de usar um tabela do arco-íris para a força bruta suas senhas . Dê uma olhada aqui para funções que cuidam das senhas de hash.
  • Você também pode forçar os usuários a criar uma senha com regras específicas. Como, exigindo que todas as senhas fossem maiores que 6 caracteres, pelo menos um número, etc ...

Quando o usuário precisar fazer login, você pode fazer algo semelhante a:

  • Obter nome de usuário e higi-lo. Lembre-se de nunca confiar na entrada dos usuários. Não importa se o próprio Deus quer uma conta no seu site.
  • Escape a senha para garantir que as pessoas sem uma conta obtenha acesso via injeção SQL . Você pode fazer isso usando o mysql_real_escape_string .
  • Quando tudo estiver no lugar, você pode consultar seu banco de dados para ver se há linhas retornadas.

Por fim, nunca envie um e-mail seu usuário sua senha em texto simples. Se o usuário esquecer sua senha, simplesmente permita que eles criem uma nova senha. Você pode fazer isso enviando o usuário um link em seu e-mail que lhe dará a capacidade de fazê-lo.

Honestamente, sua melhor aposta é provavelmente para completar esta tarefa e postar de volta (nova pergunta) por isso com o seu código. De lá podemos analisá-lo e tirá-lo de lá.

Algo ao longo dessas linhas deve cumprir suas necessidades.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top