2010-10-08 3 views
5

Интересно, что такое «правильный» способ создания учетных записей пользователей в MongoDB и таких действий, как register/login. Нужно ли создавать конкретную коллекцию для пользователей (имя пользователя, адрес электронной почты, пароль), или у MongoDB есть что-то встроенное для пользователей?Как создать учетные записи пользователей в MongoDB?

Если мне нужно создать коллекцию пользователей вручную, как бороться с шифрованием паролей? Спасибо.

ответ

5

Возможно, вам придется создавать коллекцию пользователей и управлять ими вручную.

Что касается шифрования паролей, общий подход заключается в хэш-пароле, используя подходящий hash-function, прежде чем хранить их в db. Позже, когда пользователь пытается войти в систему, вы используете одну и ту же функцию-хэш в строке, введенной в поле пароля, и сравниваете этот результат с записью пароля в своем db. Таким образом, вы никогда не храните фактические пароли, и если кто-то вас взломает, они не получат ваши пароли пользователей, просто их хэши.

Для дополнительной безопасности (против атак со словарями) вы также должны сослаться на хешированные пароли. Читайте об этом here

2

Mongo предназначено для надежной передачи данных, что вы говорите о гораздо более высоком уровне. Лучшим вопросом будет «Как выполнить аутентификацию пользователя для <language or platform you are using> с mongo»

Смежные вопросы