Подтвердить что ты не робот

Когда лучше хранить пароли в ясном тексте?

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

Я использую провайдер членства ASP.NET, который предоставляет 3 опции для хранения паролей - Clear text, Hashed, Encrypted.

Хорошо ли хранить пароли в ясном тексте с учетом характера этого приложения? Существуют ли какие-либо юридические проблемы, связанные с хранением паролей в ясном тексте?

4b9b3361

Ответ 1

Никогда.

никогда не является хорошей причиной для хранения паролей в вашей базе данных. Особенно не в ясном тексте. Вы должны хранить хэш пароля только.

Самое худшее, что вы можете сделать для пользователя, - это трансляция их "восстановленных" паролей через Интернет в электронном письме с четким текстом. Так просто просто сохранить односторонний хеш пароля, который невозможно восстановить.

Для потерянных паролей просто reset их пароль и укажите им временный пароль, который они должны изменить при входе в систему. Безопасный и безопасный.

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

Вы несете ответственность за безопасность паролей пользователей, независимо от того, насколько тривиально ваше приложение.

Ответ 2

Вот несколько причин использовать незашифрованные пароли:

  • Если вы не уважаете конфиденциальность своих пользователей.
  • Когда вы собираетесь уволиться из текущей работы и хотите оставить неизгладимое впечатление.
  • Если вы хотите, чтобы ваши основные пользователи были китайскими хакерами.

Если вы чувствуете, что любой из этих элементов соответствует вашей бизнес-модели, переходите и оставляйте свои незашифрованные пароли.

Ответ 3

Нет, неважно, неважно, не печатайте, как глупо ваше приложение.

Ответ 4

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

Это, когда вы храните пароли в открытом тексте.

Ответ 5

Я полагаю, что есть одна ситуация, когда хранение паролей в ясном тексте является подходящим.

Если вы пишете приложение для использования в качестве примера "до" в демонстрации о том, как писать защищенный код, чтобы вы могли показать, как реализовать методы шифрования/хэширования паролей.

Ответ 6

Никогда не рекомендуется хранить пароль в базе данных. Храните хэш пароля (возможно, соленый). В случае утерянных паролей сгенерируйте новый и отправьте его на их подтвержденный адрес электронной почты - убедитесь, что они изменяют этот автоматически генерируемый пароль при следующем входе в систему.

Ваша целевая аудитория может быть нетехнической, но это не относится к их друзьям, которые являются случайными/профессиональными шутками. Нетехническим пользователям следует относиться с особой тщательностью, потому что они с большей вероятностью будут придерживаться одинаковой комбинации имени пользователя и пароля для вашего небольшого приложения, учетной записи Google и учетной записи онлайн-банкинга (если банк принимает этот пароль). Они потеряют свои данные/почтовые аккаунты/деньги, и вы потеряете доверие и клиентов.

Вот сообщение в блоге сохранение паролей в базах данных, которые стоит прочитать @codinghorror

Ответ 7

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

Устанавливается шаблон шаблона для паролей:

  • Хеши их
  • Предоставьте пользователю ссылку "Забыли пароль"
  • Пользователь вводит адрес электронной почты, связанный с их учетной записью
  • Reset ссылка или пароль, созданный temp, отправляются по электронной почте по их адресу
  • При открытии ссылки или при использовании временного пароля им будет предложено указать новый пароль.

Это общий обзор и это ожидаемый подход. Существуют и другие варианты, такие как предоставление вопросов безопасности.

Ответ 8

За любой достоверной информацией по юридическим причинам проконсультируйтесь с адвокатом. В США вы сможете получить реферал от своей местной ассоциации адвокатов. Я не юрист, и это не юридическая консультация.

Тем не менее, если у вас когда-либо будет нарушение данных, вы можете нести ответственность за все, что происходит на вашем сайте, включая возможность быть ответственным за что-либо финансовое или либидое. Если пользователь использует пароль на нескольких сайтах, возможно, вы несете ответственность за другие действия на других сайтах. В США вы можете получить иск почти за все, и мне не ясно, что вы выиграете такой иск.

Таким образом, юридические обязательства потенциально велики. Проконсультируйтесь с адвокатом перед сохранением паролей с открытым текстом.

Ответ 9

Безопасность и юзабилити находятся на противоположных концах одной и той же ручки. Когда вы делаете приложение простым в использовании, например, предоставляя пользователю свой пароль, вы делаете его небезопасным. Когда вы делаете заявку, задаете 5 вопросов, образец крови и пароль, которые даже Эйнштейн забыл, у вас проблемы с юзабилити.

Ответ 10

Это хорошая идея, если у вас есть удобство в использовании и меньше усилий с точки зрения пользователя.

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

Люди используют один и тот же пароль во многих учетных записях. Если ваш db каким-то образом скомпрометирован, вы отдаете пароли, которые могут использоваться, например, в банковских счетах.

Если вы считаете, что сброс пароля не для нетехнических людей, по крайней мере, создать форму для изменения пароля, как это делает Gmail.

Я не знаю в США, но, по крайней мере, в моей стране, если скомпрометированная система хранит мои пароли в нем, я бы попытался подать в суд на них, потому что у нас есть способы предотвратить сохранение clear текстовые пароли.

Ответ 11

Вы должны хранить пароли только в ясном тексте, если хотите, чтобы это было очень легко для всех, кто их получил. Для вашего удобства я бы предложил вариант, когда пользователь вводит свой адрес электронной почты и получает электронное письмо, содержащее ссылку, с помощью которой они могут войти. При входе в систему они должны иметь возможность сменить пароль, если захотят, но если большинство пользователей не часто посещают посетителей, возможно, они даже не захотят менять свой пароль, поскольку они забудут его перед следующим посещением.

Ответ 12

Серьезно я не думаю, что это хорошая идея когда-либо...