Angriffsmodus einschalten
POST /v1/attack-protection/attack-mode:activate · Berechtigung attack-protection:write
Versetzt die Umgebung für duration_minutes (15 bis 1.440) ab jetzt in den Angriffsmodus, unabhängig von bot_protection.mode und credential_stuffing. Danach verlangt jeder Schritt mit Passwort oder Einmalcode eine strengere Bot-Prüfung; Passkey und Social Sign-in werden nicht geprüft. Verwenden Sie dies, wenn Sie einen Angriff erkennen, bevor der automatische Auslöser reagiert.
Ist Ihr manueller Zeitraum bereits offen, wird sein Ende auf jetzt plus duration_minutes gesetzt, sofern das später liegt. Eine kürzere Dauer beendet ihn nie früher (verwenden Sie dafür deactivate). Das Öffnen eines Zeitraums schreibt das Ereignis attack_mode_activated und einen Verwaltungs-Audit-Eintrag (attack_mode.activated); eine Verlängerung schreibt den Audit-Eintrag attack_mode.extended. Akteur ist Ihre Anmeldeinformation. Senden Sie einen Idempotency-Key-Header, um sicher wiederholen zu können.
Anfrage
{ "duration_minutes": 60 }
| Feld | Typ | Pflicht | Beschreibung |
|---|---|---|---|
duration_minutes |
integer | ja | 15 bis 1.440. |
Antwort
200 OK mit dem aktuellen Status, so wie ihn GET /v1/attack-protection/attack-mode zurückgibt.
Fehler
Jeder Fehler ist ein application/problem+json-Body mit einem stabilen code.
| HTTP | code |
Wann |
|---|---|---|
| 400 | malformed_request |
Der Body ist kein JSON-Objekt. |
| 400 | unknown_field |
Der Body enthält ein anderes Feld als duration_minutes. |
| 422 | validation_failed |
duration_minutes fehlt, ist keine ganze Zahl oder liegt außerhalb von 15 bis 1.440 (errors[].pointer ist /duration_minutes). |
| 401 | unauthenticated |
Der API-Schlüssel fehlt, ist ungültig oder widerrufen. |
| 403 | insufficient_permissions |
Dem Schlüssel fehlt die Berechtigung attack-protection:write. |
| 429 | rate_limited |
Das Ratenlimit wurde überschritten; beachten Sie Retry-After. |
| 503 | service_unavailable |
Eine Abhängigkeit ist vorübergehend nicht verfügbar; versuchen Sie es später erneut. |
Beispiel
curl -X POST https://api.eu.keenauth.com/v1/attack-protection/attack-mode:activate \
-H "Authorization: Bearer $KEENAUTH_SECRET_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: 7b2f0c1e-attack-mode-1" \
-d '{"duration_minutes": 60}'
CLI: keenauth attack-protection attack-mode activate --duration-minutes 60