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

StackOverflow https://stackoverflow.com/questions/3328000

Вопрос

Я хочу иметь форму входа в систему на благотворительном веб-сайте, я строю (это для друга, и я учусь на ходу), и я хочу знать, какие языки / программное обеспечение я должен научиться создавать базы данных для пользователяЛогины и информация?ПРИМЕЧАНИЕ. Это должно быть безопасным и «EM> относительно , чтобы учиться кому-то с умеренным опытом программирования.

Обновление: я понимаю, что CMS предлагает хорошие инструменты для логинов и т. Д. Но я хочу сделать это все в себе.

Это было полезно?

Решение

Самое простое, что вы можете сделать, это хэш и примените соль к вашим паролям, прежде чем вводить их в базу данных. «Злая блоха» имеет довольно хороший ответ в другом вопросе здесь .

Вы думали о том, чтобы схватить с шельфа CMS? Наиболее приличными CMS должна содержать все функциональные возможности, которые вам нужны для простого благотворительного веб-сайта. Это также даст вам прочный раствор вашей проблемы входа в систему.

Редактировать

Что касается того, на каком языке использовать. Это действительно не очень важно, пока вам удобно с ним удобно, и готовы вкладывать время и усилия. Он показывает в вашем профиле, который вы хотите изучать PHP. Похоже, написание формы входа в PHP было бы хорошей отправной точкой. Что касается конца базы данных. Опять же, это не имеет значения. Просто пожалуйста, просто не используйте MS Access. Большинство разработчиков PHP (предполагая), кажется, используют MySQL, так как это обычно то, что включено в веб-хост PHP.

О безопасности, перемешивании и добавлении соли в ваш пароль - это самое простое, что вы можете сделать. Вы могли бы сделать что-то вроде этого:

    .
  • Щетки пользователя Зарегистрироваться Ссылка
  • подписать форму регистрации, используя ssl
  • После пользователя нажимает кнопку отправки
  • hash пароль. Добавить соль. Хранить в базе данных. Добавление соли к вашему хешированному паролю предотвратит атаку с использованием с использованием используя Радужный стол для грубой силы Отказ Взгляните Здесь для функций, которые заботятся о перемешивании паролей.
  • Вы также можете заставить пользователям создать пароль с конкретными правилами. Такие, как, требующие всех паролей более 6 символов, по меньшей мере, одно число и т. Д. ...

После того, как пользователь должен войти в систему, вы можете сделать что-то подобное:

    .
  • Получить имя пользователя и дезинфицировать его. Не забудьте никогда не доверять вводам пользователям. Неважно, если сам Бог хочет счет на вашем сайте.
  • Убегайте пароль, чтобы убедиться, что люди без учетной записи получают доступ через SQL Inurity . Вы можете сделать это с помощью функции PHP MySQL_REAL_ESCAPE_STRING .
  • Как раз все на месте, вы можете запросить вашу базу данных, чтобы увидеть, возвращаются ли какие-либо строки.
Наконец, никогда не отправляйте свой пользователь свой пароль в простом тексте. Если пользователь забывает свой пароль, просто позвольте им создать новый пароль. Вы можете сделать это, отправив пользователю ссылку в свою электронную почту, которая даст им возможность сделать это.

Честно говоря, ваша лучшая ставка, вероятно, завершит эту задачу и отложить обратно (новый вопрос) на вашем коде. Оттуда мы можем проанализировать его и оттуда оттуда.

что-то вдоль этих строк должно выполнять ваши требования.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top