私有文件临时签名访问、考试分类与分数段检索(v8.5)

本次版本要解决的问题:文件链接一旦泄露就长期有效

培训课件、考试附件这类文件,如果用固定链接存放,就会出现一个很现实的隐患:链接被转发出去之后,任何人任何时间都能打开。文件本身可能涉及内部培训资料甚至涉密内容,但访问控制却只靠"别人不知道链接"。

同时还有另一个日常痛点:考试记录多了之后,想找"80 到 90 分之间的考生"或者"某个分类下的考试",只能一页页翻。v8.5 把这两件事一起处理了。

私有存储访问改造:临时签名 + 公共文件开关

  • 增加私有存储访问功能,使用临时签名秘钥访问文件,增加文件安全性;
  • 文件上传增加是否公共文件选项(公共文件无需用户登录即可访问);
  • 移除本地 m3u8 加密功能,改用用户授权方式访问。

改造后可访问性的判定从"知道链接"变成"通过授权":私有文件走临时签名密钥,签名有有效期,超时或未授权即无法访问;同时保留了公共文件开关——像宣传视频、公开通知这类内容仍然可以免登录访问,不需要为了安全牺牲所有场景的便利。

移除本地 m3u8 加密、改用用户授权方式,是把安全控制从"文件格式加密"上移到"访问授权"层——控制粒度更清晰,也不影响播放器的兼容性。

考试数据检索:人数列、分数段、分类

  • 考试列表增加考试人数展示列;
  • 考试记录增加分数段搜索;
  • 考试增加分类属性,学员端增加按考试分类查询;
  • 在线考试 → 错题汇总:导出增加错误人员列表,增加错题错误人员明细页面。

这几条合起来解决的是同一个问题:考试规模变大后,"看数据"和"找人"都变难。人数列让管理员一眼看出哪场考试参与度高;分数段搜索支持按成绩区间筛人,便于识别需要补考或需要重点跟踪的群体;分类属性则让学员端不再是一条长列表,而是按考试类型分开查。

试卷与组卷细节优化

  • 优化前端随机组卷条件展示,条件的规则不重复添加,只累加试题数量;
  • 优化前端显示试卷分数计算方法,避免出现小数点误差;
  • 增加 Docker 打包逻辑,用于打包阿里云 Serverless 上传。

分数的小数点误差是一条很容易被低估的改动。考试分数一旦出现 0.30000000000000004 这类浮点误差,成绩公示和排名都会出问题——这条修的是"看起来小、影响面很大"的准确性。

新增试题纠错功能:纠正题目后重算分数

  • 在考试过程或考完后发现试题错误,可以重新纠正题目并重新计算分数。

这是一个"事后补救"能力。出题人发现某道题题干有误、标准答案写错、或者选项设置不合理时,过去只能作废整场考试或人工核算;现在可以直接纠正题目并触发重算,已参加考试的考生成绩随之修正。

AI 配置优化

  • 增加模型数据字典;
  • 优化配置信息,合并七牛云配置为标准配置。

常见问题

临时签名有效期是多久,能配置吗?签名有效期由系统按访问场景生成。具体时长建议在部署时按单位的安全要求确认,避免设置过短影响大文件播放体验。

原来的 m3u8 加密课件需要重新处理吗?本地 m3u8 加密功能已移除,改用用户授权方式访问。存量加密课件建议在升级前确认访问方式,必要时重新上传。

试题纠错后成绩会自动重算吗?纠正题目后可触发分数重新计算。建议在操作前核对受影响考生范围,并在重算后复核成绩与证书发放结果。


试题纠错