现象
在FastGPT私有部署4.8.3版本中,出现两处异常表现:一是删除对话内容后,该对话关联的日志会随之消失;二是未经过身份验证的用户,也可以执行对话删除操作,篡改日志数据,不符合预期的日志保护逻辑。
可能原因
该问题的核心原因是FastGPT 4.8.3私有部署版本中,对话删除相关接口未配置严格的权限校验逻辑,未验证登录的用户或非授权用户可调用接口删除对话,导致关联的对话日志被同步删除。
排查步骤
- 确认当前部署的FastGPT版本为4.8.3私有部署版。
- 使用未登录的浏览器环境访问系统,尝试执行对话删除操作,观察是否可以成功删除对话并导致对应日志消失。
- 使用普通非管理员账号登录系统,执行对话删除操作,确认是否拥有删除权限。
- 查看系统后台的接口调用日志,检查对话删除接口的请求是否携带合法的权限验证凭证。
解决与验证
- 为对话删除接口添加严格的权限校验逻辑,仅允许对话所有者或管理员账号执行删除操作。
- 限制未验证登录的用户无法访问对话删除相关接口。
- 完成配置修改后,使用未登录账号、普通非管理员账号分别执行对话删除操作,确认无法删除对话,日志不会被篡改或删除。
- 使用管理员账号执行对话删除操作,确认可以正常执行,且日志同步删除符合预期。