Aggiorna le impostazioni della protezione dagli attacchi
PATCH /v1/attack-protection · permesso attack-protection:write
Aggiorna l'oggetto di protezione dagli attacchi con un JSON merge patch (application/merge-patch+json, RFC 7396). If-Match è obbligatorio: se manca si ottiene 428, se l'ETag è obsoleto 412. Una patch che non modifica nulla non scrive nulla e mantiene l'ETag.
Richiesta
| Campo | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
If-Match |
header | sì | L'ETag dell'oggetto così come letto l'ultima volta. Se manca: 428; se obsoleto: 412. |
| corpo | oggetto | sì | Il merge patch. I campi sono elencati in Sostituisci le impostazioni della protezione dagli attacchi. |
Comportamento
- Le sezioni si uniscono ricorsivamente: inviate solo i campi che modificate.
nullrimuove un campo o un'intera sezione, riportandoli al valore predefinito. Le liste comeallowlisteallowed_countriesvengono sostituite per intero.- L'oggetto unito viene verificato esattamente come un corpo
PUT.
Risposta
200 OK con l'oggetto, come in Ottieni le impostazioni della protezione dagli attacchi, e il nuovo ETag.
Errori
| HTTP | codice | Quando |
|---|---|---|
| 400 | unknown_field |
Una sezione o un campo non fa parte dell'oggetto. errors[] elenca i puntatori. |
| 400 | malformed_request |
Il corpo non è un JSON valido, oppure l'header If-Match è malformato. |
| 401 | unauthenticated |
La credenziale è mancante, non valida o revocata. |
| 403 | insufficient_permissions |
La credenziale non ha attack-protection:write. |
| 403 | plan_feature_unavailable |
risk_policy.mode è enforce ma il piano non lo include; il corpo contiene feature e required_plan. |
| 412 | precondition_failed |
L'oggetto è cambiato dopo la lettura. Leggetelo di nuovo e riprovate. |
| 413 | payload_too_large |
L'oggetto supera 32 KiB. |
| 422 | validation_failed |
Nell'oggetto unito un valore ha il tipo sbagliato o è fuori intervallo, oppure block_threshold non è maggiore di challenge_threshold. errors[] elenca i puntatori. |
| 422 | below_security_floor |
Un valore è sotto la soglia minima di sicurezza. Ogni voce di errors[] indica campo e soglia in detail. |
| 422 | allowlist_range_too_broad |
Un prefisso della lista di autorizzazione è più ampio di /8 (IPv4) o /32 (IPv6). |
| 428 | precondition_required |
If-Match manca. |
| 429 | rate_limited |
È stato superato il limite di frequenza; riprovate dopo il periodo indicato in Retry-After. |
| 503 | service_unavailable |
Una dipendenza non è disponibile temporaneamente; riprovate dopo il periodo indicato in Retry-After. |
Se sono presenti più tipi di errore, viene restituito solo il più grave, in quest'ordine: unknown_field, validation_failed, below_security_floor, allowlist_range_too_broad, plan_feature_unavailable. I valori scritti non vengono mai restituiti nella risposta.
Esempio
curl -X PATCH https://api.eu.keenauth.com/v1/attack-protection \
-H "Authorization: Bearer $KEENAUTH_SECRET_KEY" \
-H "Content-Type: application/merge-patch+json" \
-H 'If-Match: "3f1c9a0b5d7e2a4c6b8d0e1f2a3b4c5d"' \
-d '{"risk_policy": {"block_threshold": 9}, "sms_protection": null}'