Может ли администратор проверять пароли зарегистрированных пользователей?

24 апр. 2015 г., 12:17:38
Просмотры: 18.5K
Голосов: 7

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

Допустим, пользователь забыл свой пароль и хочет его сбросить. Он нажимает ссылку "Забыли пароль?" на странице входа, и новый пароль автоматически отправляется на его почту.

Как администратор, есть ли способ проверить новый пароль этого пользователя без его сброса?

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

Спасибо!

2
Комментарии

Даже если вы хотите выдать себя за пользователя, вам не следует входить в систему, используя его пароль. Вместо этого следует использовать (или реализовать, если необходимо) специальную функцию имперсонации, доступную администраторам.

CodesInChaos CodesInChaos
24 апр. 2015 г. 14:59:49

@CodesInChaos, не могли бы вы подробнее объяснить это? Спасибо.

luqo33 luqo33
24 апр. 2015 г. 15:12:50
Все ответы на вопрос 1
1

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

При этом вам, как администратору, не нужен пароль для доступа к профилю или данным пользователя. Администраторы имеют доступ к большинству полей профиля прямо в админке и, конечно же, через базу данных. Новые или кастомные поля в профилях пользователей можно кодировать с доступом администратора или без — это полностью на ваше усмотрение. Поэтому я не вижу смысла в получении паролей пользователей.

24 апр. 2015 г. 12:52:15
Комментарии

Это разумно. На самом деле, я понял, что это была плохая идея после публикации вопроса. Спасибо за подробное объяснение.

luqo33 luqo33
24 апр. 2015 г. 13:03:23