2012-07-02 3 views
0

Я хотел бы спросить вас: Представьте, что у вас есть сайт и есть дополнительный контент для зарегистрированных членов, которые заплатили ежемесячную плату. Как обеспечить, чтобы какая-то группа друзей не использовала только одну зарегистрированную учетную запись пользователя с доступом ко всему? Я думал, что, возможно, хранение IP-адресов, но как насчет пользователей с динамическими IP-адресами? Возможно, подлинность SMS будет правильным, но это стоит денег, и это раздражает пользователей. Я не знаю. Есть идеи? Я использую PHP с Zend Framework.Предотвращение нескольких пользователей на одной учетной записи

Спасибо, Т.

+1

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

ответ

1

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

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

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

Я также согласен со всем, что было написано Darwindeeds в комментарии к вашему вопросу.

+0

Привет, спасибо за ваш ответ. Я согласен с вами, а также с darwindeeds. Я собираюсь немного подумать об этом и, возможно, просто реализовать то, что вы сказали. – user1377911

0

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