LoginRateLimiter
StockSharp.Server.Core
Ограничитель скорости попыток входа. Отслеживает неудачные попытки для каждого IP-адреса и отклоняет соединения, превышающие настроенный порог, в течение скользящего временного окна.
Конструкторы
LoginRateLimiter
public LoginRateLimiter(int maxAttempts, TimeSpan? window)
loginRateLimiter = LoginRateLimiter(maxAttempts, window)
Инициализирует новый экземпляр.
- maxAttempts
- Максимальное количество неудачных попыток, разрешенных в пределах окна.
- window
- Скользящее окно времени для отслеживания попыток.
Свойства
TrackedCount
public int TrackedCount { get; }
value = loginRateLimiter.TrackedCount
Количество IP-трекеров в настоящее время проводится. Выставляется для диагностики и испытаний, чтобы убедиться, что пустые трекеры выселяются и не накапливаются.
Методы
IsLimited
public bool IsLimited(EndPoint remoteEndPoint)
result = loginRateLimiter.IsLimited(remoteEndPoint)
Проверьте, ограничена ли данная конечная точка скоростью.
- remoteEndPoint
- Конечная точка клиента.
Возвращает: true, если клиент должен быть отклонен.
RecordFailure
public void RecordFailure(EndPoint remoteEndPoint)
loginRateLimiter.RecordFailure(remoteEndPoint)
Запишите неудачную попытку входа в систему для данной конечной точки.
- remoteEndPoint
- Конечная точка клиента.
RecordSuccess
public void RecordSuccess(EndPoint remoteEndPoint)
loginRateLimiter.RecordSuccess(remoteEndPoint)
Записать успешный вход в систему — очищает счетчик неудач для конечной точки.
- remoteEndPoint
- Конечная точка клиента.