漏洞概述 该漏洞涉及在获取 时,如果 不可访问,则返回的信息不一致。具体来说,当父资源报告在可访问的组织或个人工作区中时,返回200和空列表;而在不可访问的组织或个人工作区中,返回500。这与所有基于资源的过滤器不一致,后者在资源不可访问时返回403。此外,返回500状态码会泄露关于质量报告的信息,存在安全风险。 影响范围 API端点: 触发条件:当 不可访问时 当前行为:返回500状态码 预期行为:应返回403状态码 修复方案 检查权限:在返回响应之前,显式检查用户是否有权限查看父资源。 统一错误处理:确保所有基于资源的过滤器在资源不可访问时返回403状态码。 代码块 其他信息 测试方法:REST API测试 检查清单: - 提交更改到 分支 - 创建变更日志片段 - 更新文档 - 添加测试覆盖更改 - 链接相关问题(如有) 许可证:代码更改遵循项目的MIT许可证 评论和审查 评论者: 审查者: 和 合并状态:已合并到 分支 结论 此修复解决了在获取质量报告时因 不可访问而返回不一致状态码的问题,提高了系统的安全性和一致性。