アカウントロックを一覧表示する

GET /v1/attack-protection/lockouts · 権限 attack-protection:read

環境の未解除のアカウントロックを、古いものから順に一覧表示します。ブルートフォース対策は、多数回失敗したあとに、ユーザーのサインイン経路(たとえば password や totp)を 1 つロックします。そのユーザーの他の経路は開いたままです。期限切れのロックはその経路をもうブロックしないため、一覧には表示されません。一覧は前方へのページングのみに対応し、総件数は返しません。レスポンスには IP アドレスも、失敗カウンターのキーも含まれません。

リクエスト

パラメータ 入力 必須 説明
limit query いいえ 1 ページあたりの件数。1〜100(既定値は 20)。
after query いいえ 前のページの list_metadata.after から取得したカーソル。

before と order=desc はサポートされておらず、指定すると 422 を返します。

レスポンス

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}
}
フィールド 説明
id ロック ID。lck_ で始まります。user.unlocked イベントも同じ ID を含みます。
user_id ロックされたユーザーです。
path ロックされたサインイン経路です。password、totp、sms_2fa、email_2fa、otp、または recovery_code です。
locked_at、expires_at ロックが始まった時刻と、自動的に解除される時刻です。
failure_count ロックの原因になった、期間内の失敗回数です。

エラー

すべてのエラーは、安定した code を含む application/problem+json ボディとして返されます。

HTTP code 発生条件
400 invalid_cursor カーソルの形式が不正か、別の一覧のものです。
422 validation_failed limit が範囲外か、before または降順の order が送信されました。
401 unauthenticated API キーがない、無効、または失効しています。
403 insufficient_permissions キーに attack-protection:read 権限がありません。
429 rate_limited レート制限を超えました。Retry-After に従ってください。
503 service_unavailable 依存先が一時的に利用できません。後で再試行してください。

例

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