Есть ли способ ограничить доступ к логину пользователя только, скажем, 5 IP-адресов в день? Таким образом, если учетная запись пользователя попыталась войти в тот же день с 6-го другого IP-адреса, им будет отказано. Однако я хотел бы, чтобы это ограничение было сброшено в конце дня.Rails: ограничение ежедневного входа пользователя по IP-адресу?
Если Authlogic не предоставляет способ отслеживать это из коробки, какие у вас есть идеи о том, как я должен это реализовать? Как вы, вероятно, можете сказать, я уже использую Authlogic для аутентификации.
Моя основная цель - ограничить возможности моего пользователя делиться своим логином с незарегистрированным пользователем; Я знаю, что IP-адрес большинства людей будет меняться периодически в течение дня, потому что вряд ли у кого-то есть персональный статический IP-адрес, но я думаю, что 5 - это справедливое количество надбавок, даже если учесть, что пользователь может посетить мой сайт на своем iPhone или Starbucks и т. Д.
Мысли?
UPDATE: После прочтения многих замечаний по ссылке, предоставленных @tadman, я думаю, что это могло бы быть более полезным, чтобы ограничить число новых сессий, созданных на компьютере, который не имел ни ранее, вместо по IP-адресу. Если я понимаю, как работает Authlogic, сеансы - это комбинация записей на стороне сервера и cookie в браузере пользователя, правильно? Если я «выйду» из своего сайта, файл cookie все еще присутствует в моем браузере, не так ли? Просто с истекшим значением или что-то в этом роде. Могу ли я проверить это? Например, если компьютер, который не имеет этого cookie, я бы назвал полностью NEW логин, и я бы ограничил количество новых логинов до 5 в день? Будет ли это осуществимым подходом?
Смотрите комментарии этого пользователя о скорости ограничения по IP для угла на то, что я имею в виду: http://simonwillison.net/2009/Jan/7/ratelimitcache/#c43031
Спасибо за головы, но как бы это реализовать? Пример, который вы указали, представляет собой ограничение скорости для определенного IP; Я бы хотел сделать это на моей модели User ...? – neezer
Вы можете отслеживать идентификатор пользователя точно так же, как IP, или, возможно, комбинацию обоих. – tadman
Чтение вашего редактирования выше, я думаю, вы можете отслеживать количество уникальных сеансов на пользователя в день или что-то в этом роде. – tadman