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