Files
Nexus/docs/changelog/2026-06-01-schema-posix-path-validation.md
T

1.2 KiB
Raw Blame History

ChangelogAPI Schema 层 POSIX 路径校验(P2

内容
日期 2026-06-01
类型 增强 / 安全
动机 分批审查 P2:在 Pydantic 入口拒绝 Windows 反斜杠并统一 Linux 路径形态

变更摘要

  • 新增 server/api/schema_path_validators.py:远程绝对路径、Nexus 本机绝对路径、相对路径校验
  • server/api/schemas.py:服务器 target_path、同步/文件/调度等相关字段增加 field_validator
  • FileDecompress.dest 不再默认 ".",必须为绝对路径(与解压 API 一致)
  • sync_engine_v2:推送前对 source_pathto_posix
  • 测试:tests/test_schema_path_validators.py

涉及文件

  • server/api/schema_path_validators.py(新)
  • server/api/schemas.py
  • server/application/services/sync_engine_v2.py
  • tests/test_schema_path_validators.py(新)

迁移 / 重启

  • 需重启后端
  • 若客户端曾传 dest: "." 解压,将收到 422,应改为当前目录绝对路径(如 /www/wwwroot/...

验证

pytest tests/test_schema_path_validators.py tests/test_posix_paths.py tests/test_remote_path_validation.py -q
ruff check server/api/schemas.py server/api/schema_path_validators.py