공격 모드 켜기
POST /v1/attack-protection/attack-mode:activate · 권한 attack-protection:write
bot_protection.mode와 credential_stuffing 값과 관계없이, 지금부터 duration_minutes(15~1,440분) 동안 환경을 공격 모드로 전환합니다. 이후 모든 비밀번호 및 일회용 코드 단계에서 더 강화된 봇 검증을 요구하며, 패스키와 소셜 로그인은 검증하지 않습니다. 자동 트리거보다 먼저 공격을 발견했을 때 사용하세요.
수동 기간이 이미 열려 있으면, 종료 시각이 지금 + duration_minutes보다 늦을 경우에만 그 시각으로 연장됩니다. 더 짧은 기간을 지정해도 기존 기간이 더 일찍 끝나지는 않습니다(끝내려면 deactivate를 사용하세요). 기간을 여는 경우 attack_mode_activated 이벤트와 관리 감사 기록(attack_mode.activated)이 기록되며, 연장하는 경우 attack_mode.extended 감사 기록이 남습니다. 행위자는 사용 중인 자격 증명입니다. 안전하게 재시도하려면 Idempotency-Key 헤더를 보내세요.
요청
{ "duration_minutes": 60 }
| 필드 | 타입 | 필수 | 설명 |
|---|---|---|---|
duration_minutes |
integer | 예 | 15~1,440. |
응답
200 OK와 현재 상태가 반환됩니다. 형식은 GET /v1/attack-protection/attack-mode와 같습니다.
오류
모든 오류는 안정적인 code를 담은 application/problem+json 본문입니다.
| HTTP | code |
발생 시점 |
|---|---|---|
| 400 | malformed_request |
본문이 JSON 객체가 아닙니다. |
| 400 | unknown_field |
본문에 duration_minutes 이외의 필드가 있습니다. |
| 422 | validation_failed |
duration_minutes가 없거나, 정수가 아니거나, 15~1,440 범위를 벗어납니다(errors[].pointer는 /duration_minutes). |
| 401 | unauthenticated |
API 키가 없거나, 잘못되었거나, 취소되었습니다. |
| 403 | insufficient_permissions |
키에 attack-protection:write 권한이 없습니다. |
| 429 | rate_limited |
요청 한도를 초과했습니다. Retry-After를 따르세요. |
| 503 | service_unavailable |
종속 서비스를 일시적으로 사용할 수 없습니다. 나중에 다시 시도하세요. |
예제
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