Files
qhmes/yy-admin-master/doc/Jeecg密码与本地校验说明.md

27 lines
1.1 KiB
Markdown
Raw Normal View History

# JeecgBoot 密码算法与 yy-admin 本地校验
## 算法(与 Java `PasswordUtil` 一致)
- 名称:`PBEWithMD5AndDES`PKCS#5 Scheme1 + MD5DES/CBC/PKCS7
- 迭代次数:`1000`
- 明文:`encrypt(登录名 UTF-8, 明文密码, salt 字符串)`
- 登录名对应 Jeecg 的 `username`,在本项目中对应 `SysUser.Account`
- 存储值:密文字节的 **十六进制小写字符串**(与 Jeecg `sys_user.password` 一致)
## C# 实现位置
- `YY.Admin.Core/Util/JeecgPasswordUtil.cs``Encrypt` / `Verify`
## 数据库字段
- `SysUser.Password`:存放 Jeecg 返回的十六进制密文(或本地 SM2 加密串,取决于来源)
- `SysUser.JeecgPasswordSalt`Jeecg `sys_user.salt`**非空时**登录优先走 `JeecgPasswordUtil.Verify`
## 同步SCADA 接口)
若 Jeecg SCADA 用户接口 JSON 中包含 `password``salt`,同步逻辑会写入上述两字段(见 `SysAuthService.ProcessJeecgUserRecordsAsync`)。
## 数据库迁移
新增列 `JeecgPasswordSalt`:若使用 SqlSugar 迁移/手工建表,请在 `sys_user` 增加可空字符串列(长度建议 64