Лучший способ ограничить (и запись) входит в систему попытки

Несколько лет спустя просто добавить еще одно простое базовое R-решение, которое по какой-то причине отсутствует здесь xtabs

xtabs(Frequency ~ Category, df)
# Category
# First Second  Third 
#    30      5     34 

Или, если хотите data.frame назад

as.data.frame(xtabs(Frequency ~ Category, df))
#   Category Freq
# 1    First   30
# 2   Second    5
# 3    Third   34
19
задан Derek H 24 February 2009 в 05:09
поделиться

7 ответов

Используйте некоторые столбцы в своей пользовательской таблице 'failed_login_attempts' и 'failed_login_time'. Первый увеличивает на неудавшийся вход в систему и сброс на успешном входе в систему. Второй позволяет Вам сравнивать текущее время с прошлым неудавшимся разом.

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

17
ответ дан 30 November 2019 в 03:53
поделиться

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

Увеличивающиеся тайм-ауты печальны, когда я - подлинный пользователь и забыл мой пароль (с таким количеством веб-сайтов и их связанными паролями, который происходит много, особенно мне)

6
ответ дан 30 November 2019 в 03:53
поделиться

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

Путем записи всех плохих попыток можно также собрать высокоуровневую информацию, такой, как будто запросы прибывают из одного IP-адреса (т.е. кто-то / вещь делает попытку атаки перебором), таким образом, можно заблокировать IP-адрес. Это может быть ОЧЕНЬ полезной информацией.

, После того как Вы определили порог, почему бы не вынудить их запросить электронную почту быть отправленной в их адрес электронной почты (т.е. подобный 'Я забыл свой пароль'), или можно пойти для подхода CAPCHA.

3
ответ дан 30 November 2019 в 03:53
поделиться

Политика блокировки - все хорошо и хороший, но существует баланс.

Одно соображение должно думать о consruction имен пользователей - отгадываемый? Они могут быть перечислены вообще?

я был на Внешнем Перьевом Тесте Приложения для доткома с Порталом Сотрудника, который служил Веб-доступу Outlook / Intranet Services, определенные Приложения. Было легко перечислить пользователей (Должностное лицо/Managament Команда на самом веб-сайте, и через подобных Google, Facebook, LinkedIn и т.д.). Как только Вы получили формат входа в систему имени пользователя (firstname тогда фамилия, вводимая как единственная строка), у меня была возможность закрыться 100's пользователей из-за их 3 забастовок и политики.

2
ответ дан 30 November 2019 в 03:53
поделиться

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

мне нравится понятие экспоненциально увеличивающегося времени между попытками, [...]

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

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

1
ответ дан 30 November 2019 в 03:53
поделиться

Сохраните информационную серверную сторону. Это позволило бы Вам также защищать от распределенных нападений (прибывающий из нескольких машин).

1
ответ дан 30 November 2019 в 03:53
поделиться

Вы хотели бы говорить, блокируются, вход в систему в течение некоторого времени говорят, например, 10 минут четвертого попытки отказа, например. Экспоненциально увеличивающееся время звучит хорошим мне. И да, храните информацию на серверной сессии или базе данных. База данных лучше. Никакой бизнес cookie, поскольку легко управлять пользователем.

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

1
ответ дан 30 November 2019 в 03:53
поделиться