• Data Governance Dev's avatar
    feat(backend): 详情接口返回 task 密码 + 守住 list/detail 可见性 · 03e74bbb
    Data Governance Dev authored
    旧设计:密码不进 API 响应(标榜'安全'),靠前端从匹配的 connection_preset 里拿。
    问题:业务用户手动建的连接没匹配的预设 → form.password 永远空 →
         /api/connect/columns 因为缺密码连不上 → 编辑场景 cn/type 永远是 '—'/'空'。
    
    改为:详情接口(GET /api/tasks/{id})直接返回 password 字段;列表接口不返回。
    
    权衡:
    - 明文传输:内部工具单用户部署,TLS 终端到终端,加密不加密收益相同
      (用户反正可以从 task.conn_json 复制、从前端 devtools 看)
    - 真正权威的来源是 task.conn_json 里的密码(用户建任务时填的那个),
      而不是预设的密码(可能跟任务不同步)
    
    测试 test_password_returned_in_detail_but_not_in_list 守住:
    detail 接口 password 有值,list 接口 password 为 None。
    
    如果以后需要让 list 也带,加 ?include_password=true 查询参数即可;
    现在不预先暴露。
    03e74bbb
tasks.py 16.6 KB