Я работаю над проектом Django 1.9, и мне было предложено разрешить некоторым пользователям печатать страницу со списком пользователей и их паролей. Конечно, пароли зашифрованы, и нет никаких готовых способов сделать это. Я знаю, что это будет означать нарушение безопасности, поэтому мой вопрос противоречив, но есть ли логичный способ сделать это, что не означает огромного нарушения безопасности в программном обеспечении?Как выставить пользовательские пароли наиболее безопасным способом в django?
ответ
Нет, логического способа сделать это не существует, что не означает огромного нарушения безопасности в программном обеспечении.
Если пароли сохранены правильно (соленые и хэшированные), то даже администраторы сайта с неограниченным доступом в базе данных не могут сказать вам, что пароли в текстовом виде.
Вы должны отказаться от этого необоснованного запроса. Если у вас есть действующая функция сброса пароля, никто, кроме пользователя, никогда не должен знать пароль пользователя. Если у вас нет надежной функции «сброса пароля», попробуйте и начните разворот и усилия по развитию в этом направлении. Редко требуется какая-либо реальная потребность в бизнесе для знания/печати паролей пользователей, и такие запросы функций могут поступать от нетехнических людей, у которых есть недопонимание (или отсутствие понимания) о деталях реализации аутентификации и авторизации.
Просто использовать хеш-функцию недостаточно, и просто добавление соли делает мало для улучшения безопасности. Вместо этого перейдите по HMAC со случайной солью в течение приблизительно 100 мс и сохраните соль с хешем. Используйте такие функции, как 'PBKDF2',' password_hash', 'Bcrypt' и аналогичные функции. Дело в том, чтобы заставить злоумышленника потратить много времени на поиск паролей грубой силой. – zaph
- 1. Написание класса безопасным способом
- 2. отправить данные через Интернет безопасным способом
- 3. .NET Process.Kill() безопасным способом
- 4. Замена memcpy безопасным способом
- 5. Как настроить OpenSSL безопасным способом для HTTPS?
- 6. Переименовать класс безопасным способом?
- 7. Как проверить сеанс PHP более безопасным способом?
- 8. Как хранить данные в поиске безопасным способом?
- 9. Как захватить только текст элементов HTML безопасным и безопасным способом
- 10. Отправка электронной почты безопасным способом
- 11. Моделирование POST API безопасным способом
- 12. Умножая фракции безопасным способом C#
- 13. Вызов php-страницы безопасным способом
- 14. Обновите ConcurrentHashMap потоковым безопасным способом
- 15. Сортировка Winforms TreeView безопасным способом?
- 16. Отправить форму переменной безопасным способом
- 17. php, как отправить данные формы безопасным способом?
- 18. Как расширить TFieldDef простым и безопасным способом?
- 19. Как создать «TypedColumn» Apache Spark безопасным способом?
- 20. Как вставить текстовый контент наиболее безопасным способом из textarea в MYSQL
- 21. Сбор паролей топологий от пользователей безопасным способом
- 22. Преобразование строки в целые числа безопасным способом
- 23. безопасным способом хранить ключ в неуправляемых устройствах
- 24. Django, что является наиболее эффективным способом подмножества набора запросов?
- 25. Django не обновляет пароли
- 26. Как рассчитать наиболее выгодную комбинацию наиболее эффективным способом?
- 27. Список Операция наиболее эффективным способом
- 28. Как проверить пароли пользователей в Django
- 29. Перенаправление пользователей и данных безопасным способом
- 30. Совместное использование DataContext для UserControl безопасным способом
Если вам нужна дополнительная информация, попробуйте это здесь: http://security.stackexchange.com/ У них есть какой-то вопрос уже по вашей теме, возможно, дать ему прочитать? Короче говоря, нет, вы никогда не сможете напечатать установленный пользователем пароль. Если это пароль по умолчанию, который не будет проблемой, как стандартный день рождения + номер идентификатора. wim покрывает остальное, что я хочу сказать. – MooingRawr
Вы не должны. этот запрос не имеет смысла, и он должен быть незаконным. –