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.
- remoteEndPoint
- Client-Endpunkt.
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.
- remoteEndPoint
- Client-Endpunkt.
RecordSuccess
public void RecordSuccess(EndPoint remoteEndPoint)
loginRateLimiter.RecordSuccess(remoteEndPoint)
Notieren Sie einen erfolgreichen Login - löscht den Fehlerzähler für den Endpunkt.
- remoteEndPoint
- Client-Endpunkt.