移除前端默认登录凭据

This commit is contained in:
wkc
2026-05-11 16:32:20 +08:00
parent 0bf73a923f
commit 598f5dec1c
3 changed files with 42 additions and 7 deletions

View File

@@ -0,0 +1,35 @@
# 登录页前端凭据清理实施记录
## 背景
- 登录页存在默认预填账号 `admin` 和密码 `admin123`
- 登录页“记住密码”逻辑会把用户密码写入浏览器 Cookie。
- 本次按要求移除前端代码中的账号密码,并将该类问题写入项目根 `AGENTS.md`
## 修改内容
- 修改 `ruoyi-ui/src/views/login.vue`
- 将登录表单默认 `username``password` 改为空字符串。
- 将“记住密码”文案调整为“记住账号”。
- 停止从 Cookie 读取密码,进入登录页时主动清理历史 `password` Cookie。
- 停止登录时向 Cookie 写入密码,仅保留用户名记忆能力。
- 修改 `AGENTS.md`
- 增加禁止在前端源码、配置、示例数据或页面默认值中硬编码或预填真实账号密码的规则。
- 增加登录页不得将密码保存到 Cookie、localStorage 或 sessionStorage 的规则。
- 明确登录页最多只能保存用户名,不允许保存密码或预填默认密码。
## 影响范围
- 影响前端登录页默认展示与“记住”行为。
- 不修改后端登录接口、账号认证逻辑、数据库用户密码哈希或权限体系。
- 已存在于用户浏览器中的旧 `password` Cookie 会在访问登录页时被清理。
## 验证记录
- 源码检查:`rg -n "admin123|Cookies\\.set\\(\\\"password\\\"|Cookies\\.get\\(\\\"password\\\"|记住密码|decrypt\\(|encrypt\\(" ruoyi-ui/src -S`
- 结果:未命中登录页默认账号密码、密码 Cookie 读写和“记住密码”文案;仅保留 `jsencrypt.js` 通用工具函数定义。
- 前端构建:`source ~/.nvm/nvm.sh && nvm use && node -v && npm run build:prod`
- 结果Node `v14.21.3` 下构建成功;存在原有资源体积 warning。
- 真实页面验证:启动前端开发服务后,使用 `browser-use` 打开 `http://127.0.0.1:8080/login`
- 结果:页面存在账号与密码输入框各 1 个,“记住账号”文案 1 个,“记住密码”文案 0 个,页面 DOM 不包含 `admin``admin123`
- 测试进程清理:已关闭本次启动的 `127.0.0.1:8080` 前端开发服务。