LoginRateLimiter
StockSharp.Server.Core
Rate Limiter für Anmeldeversuche: Verfolgt fehlgeschlagene Versuche pro IP-Adresse und weist Verbindungen ab, die innerhalb eines gleitenden Zeitfensters den konfigurierten Schwellenwert überschreiten.
Konstruktoren
LoginRateLimiter
public LoginRateLimiter(int maxAttempts, TimeSpan? window)
loginRateLimiter = LoginRateLimiter(maxAttempts, window)
Initialisiert eine neue Instanz.
- maxAttempts
- Maximale fehlgeschlagene Versuche innerhalb des Fensters erlaubt.
- window
- Zeitfenster für Nachverfolgungsversuche verschieben.
Eigenschaften
TrackedCount
public int TrackedCount { get; }
value = loginRateLimiter.TrackedCount
Anzahl der derzeit vorhandenen IP-Tracker: Ausgesetzt für Diagnosen und Tests, um zu überprüfen, ob leere Tracker vertrieben werden und sich nicht ansammeln.
Methoden
IsLimited
public bool IsLimited(EndPoint remoteEndPoint)
result = loginRateLimiter.IsLimited(remoteEndPoint)
Prüfen Sie, ob der angegebene Endpunkt ratenbegrenzt ist.
Rückgabe: Wenn der Kunde abgelehnt werden sollte.
RecordFailure
public void RecordFailure(EndPoint remoteEndPoint)
loginRateLimiter.RecordFailure(remoteEndPoint)
Notieren Sie einen fehlgeschlagenen Anmeldeversuch für den angegebenen Endpunkt.
RecordSuccess
public void RecordSuccess(EndPoint remoteEndPoint)
loginRateLimiter.RecordSuccess(remoteEndPoint)
Notieren Sie einen erfolgreichen Login - löscht den Fehlerzähler für den Endpunkt.