как реализовать систему входа в систему для веб-приложений?

Я пишу систему входа в систему для веб-сайта, который я создаю.
Вот сущность того, как я реализую систему входа в систему:

У меня есть две таблицы: пользователи и сессии.

   users: uid | uname | pass
sessions: sid | uid | ts | ts_expires

Таким образом, пользователь вводит uname/pass комбинацию.

  • если комбинация является неправильной, я перенаправляю к "плохой подлинной" странице.
  • если комбинация корректна, я:
    • генерируйте случайный sessionid (sid)
    • вставьте запись в sessions при соединении этого предоставляется sid с uid имени пользователя.
    • установите названный cookie sid со значением случайного sid просто вставленный в sessions.

На каждой странице, которой нужен пользователь для входа в систему, я проверяю:

  • установлен ли cookie
  • если sid допустим

Таким образом, мои вопросы:

  • Каковы могли быть потенциальные проблемы с этим механизмом?
  • Как польза должна войти в систему быть реализованной?

PS: Я еще не использую защищенный вход в систему SSL. Таким образом, это - единственная проблема, которую я определяю на данный момент. И о, я использую php и mysql, если это релевантно.


Править: Я храню пароли не в простом тексте, но как MD5 имени пользователя, связанного с паролем.

Так, pass = MD5($uname.$pass),так сказать.

14
задан 3 revs, 2 users 96% 11 August 2013 в 01:58
поделиться