Skip to content

认证管理

登录

使用默认管理员账号登录:

bash
curl -X POST http://localhost:12376/api/login \
  -H "Content-Type: application/json" \
  -d '{"username": "admin", "password": "admin123"}'

成功返回 JWT token(24 小时有效期):

json
{
  "code": 0,
  "message": "ok",
  "data": {
    "token": "eyJhbGciOiJIUzI1NiIs..."
  }
}

使用 Token

在后续请求的 HTTP Header 中携带 Token:

bash
curl -X POST http://localhost:12376/api/debug/ping \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiIs..." \
  -H "Content-Type: application/json" \
  -d '{"target": "8.8.8.8", "count": 2}'

修改密码

bash
curl -X PUT http://localhost:12376/api/profile/password \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{"old_password": "admin123", "new_password": "NewSecurePass123"}'

退出登录

bash
curl -X POST http://localhost:12376/api/logout \
  -H "Authorization: Bearer <token>"

退出后该 token 即时失效(通过 TokenVersion 机制实现)。

公开访问控制

诊断工具默认需要登录才能使用。管理员可以通过管理界面或 API 开启公开访问:

bash
curl -X PUT http://localhost:12376/api/admin/config \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{"debug_public": true}'

开启后,未登录用户也可以使用所有诊断工具。