# Changelog ## 变更信息 - **版本号**: v0.1.18 - **发布日期**: 2026-01-16 - **变更类型**: 安全修复 ## 变更摘要 修复 datai-salesforce-auth 模块中的安全问题,包括密码加密方式调整、敏感信息日志脱敏和请求频率限制。这些修复提高了系统的安全性,防止密码泄露、日志泄露和暴力破解攻击。 ## 详细变更 ### 安全修复 - **密码加密方式调整** - 将密码加密方式从对称加密改为不可逆的 BCrypt 哈希算法,提高了密码安全性 - **敏感信息日志脱敏** - 对 Session ID、用户 ID 等敏感信息进行脱敏处理,防止日志泄露 - **请求频率限制** - 为登录接口添加请求频率限制功能(每分钟最多 5 次登录尝试),防止暴力破解攻击 ### 其他变更 - **语法错误检查** - 检查代码语法,确认代码中的 3 个右括号 `)))` 是正确的语法,不存在语法错误 ## 影响范围 ### 受影响的模块 - **datai-salesforce-auth** - 影响程度:高,涉及密码加密、日志记录和登录接口 ### 兼容性说明 - **数据库变更** - 需要执行数据库迁移脚本,添加 password_hash 字段 - **配置变更** - 需要在 application-auth.yml 中添加限流配置 - **向后兼容** - 保留旧的 passwordEncrypted 字段,标记为 @Deprecated,以便于回滚 ## 升级指南 ### 升级步骤 1. 执行数据库迁移脚本 migration-change-password-encryption.sql,添加 password_hash 字段 2. 更新 application-auth.yml 配置文件,添加限流配置 3. 重新编译和部署应用 4. 测试登录功能,确保登录正常工作 5. 测试自动登录功能,确保自动登录正常工作 6. 测试请求频率限制,确保超过限制时返回明确的错误信息 7. 查看日志文件,确保敏感信息已正确脱敏 ### 注意事项 - 由于从对称加密改为 BCrypt 哈希,旧的密码无法直接迁移,建议用户重新登录 - 可以保留旧的 passwordEncrypted 字段一段时间,以便于回滚 - 确认新系统运行正常后,可以考虑删除旧的 passwordEncrypted 字段 - 限流功能默认启用,可以通过配置文件禁用或调整限流参数 ## 测试信息 ### 测试环境 - **开发环境** - 本地开发环境,用于功能测试 ### 测试结果 - **密码加密测试** - 测试通过,密码使用 BCrypt 加密,无法直接解密 - **日志脱敏测试** - 测试通过,日志中敏感信息已脱敏 - **请求频率限制测试** - 测试通过,超过限制时返回明确的错误信息 - **登录功能测试** - 测试通过,登录功能正常工作 - **自动登录功能测试** - 测试通过,自动登录功能正常工作 ## 相关链接 - [需求文档](../requirements/REQ-008.md) - datai-salesforce-auth 模块立即修复事项 - [架构决策](../decisions/adr/0008-datai-salesforce-auth-immediate-fixes.md) - datai-salesforce-auth 模块立即修复架构决策 - [会话记录](../sessions/20260116-datai-salesforce-auth-immediate-fixes.md) - datai-salesforce-auth 模块立即修复实现 ## 发布人员 - **SSOT Architect** - 架构师 ## 审核信息 - **审核人员**: 待审核 - **审核日期**: 待审核 - **审核状态**: 待审核 - **审核意见**: 待审核