Kontosperren auflisten

GET /v1/attack-protection/lockouts · Berechtigung attack-protection:read

Listet die offenen Kontosperren der Umgebung auf, älteste zuerst. Der Brute-Force-Schutz sperrt einen Anmeldeweg eines Benutzers (zum Beispiel password oder totp) nach zu vielen Fehlversuchen; die übrigen Wege des Benutzers bleiben offen. Eine abgelaufene Sperre wird nicht aufgelistet, weil sie den Weg nicht mehr blockiert. Die Liste blättert nur vorwärts und liefert keine Gesamtzahl. Die Antwort enthält keine IP-Adresse und keinen Schlüssel des Fehlerzählers.

Anfrage

Parameter In Erforderlich Beschreibung
limit query nein Einträge pro Seite, 1-100 (Standard 20).
after query nein Cursor aus list_metadata.after der vorherigen Seite.

before und order=desc werden nicht unterstützt und ergeben 422.

Antwort

200 OK.

{
  "data": [
    {
      "id": "lck_01jaz8m5c3f6t9w2y4b7d0g3k6",
      "user_id": "usr_0a1b2c3d4e5f6g7h8j9k0m1n2p",
      "path": "password",
      "locked_at": "2026-10-20T09:00:00Z",
      "expires_at": "2026-10-20T09:15:00Z",
      "failure_count": 20
    }
  ],
  "list_metadata": {"before": null, "after": null}
}
Feld Beschreibung
id Sperr-ID mit Präfix lck_. Das Ereignis user.unlocked trägt dieselbe ID.
user_id Der gesperrte Benutzer.
path Der gesperrte Anmeldeweg: password, totp, sms_2fa, email_2fa, otp oder recovery_code.
locked_at, expires_at Wann die Sperre begann und wann sie von selbst endet.
failure_count Fehlgeschlagene Versuche im Zeitfenster, die zur Sperre geführt haben.

Fehler

Jeder Fehler ist ein application/problem+json-Body mit einem stabilen code.

HTTP code Wann
400 invalid_cursor Der Cursor ist fehlerhaft oder gehört zu einer anderen Liste.
422 validation_failed limit liegt außerhalb des Bereichs, oder before bzw. eine absteigende order wurde gesendet.
401 unauthenticated Der API-Schlüssel fehlt, ist ungültig oder widerrufen.
403 insufficient_permissions Dem Schlüssel fehlt die Berechtigung attack-protection:read.
429 rate_limited Das Ratenlimit wurde überschritten; beachten Sie Retry-After.
503 service_unavailable Eine Abhängigkeit ist vorübergehend nicht verfügbar; später erneut versuchen.

Beispiel

curl https://api.eu.keenauth.com/v1/attack-protection/lockouts?limit=50 \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY"

CLI: keenauth attack-protection lockouts list --limit 50