5.4 KiB
5.4 KiB
授权码模块部署检查清单
📋 部署前检查
1. 文件完整性检查
- ruoyi-license 模块目录存在
- pom.xml 已添加 license 模块
- ruoyi-admin/pom.xml 已添加 license 依赖
- SysLicenseController.java 已创建
- license.html 和 active.html 已创建
- login.html 和 login.js 已修改
- sys_license.sql 脚本已准备
2. 数据库准备
- 创建 sys_license 表
- 插入授权管理菜单数据
- 验证表结构正确
- 检查菜单权限配置
3. 代码配置
- 修改 LicenseUtils.java 中的密钥(生产环境必须)
- 确认拦截器路径配置正确
- 确认定时任务cron表达式
- 启动类添加 @EnableScheduling 注解
🔧 部署步骤
步骤1: 执行数据库脚本
mysql -u root -p your_database < sql/sys_license.sql
- 执行成功
- 表创建成功
- 菜单数据插入成功
步骤2: 修改启动类
@SpringBootApplication
@EnableScheduling // 添加此注解
public class RuoYiApplication {
// ...
}
- 注解已添加
步骤3: 编译项目
mvn clean install
- 编译成功
- 无错误信息
- JAR包生成
步骤4: 启动应用
java -jar ruoyi-admin.jar
- 启动成功
- 无异常日志
- 端口正常监听
步骤5: 生成授权码
方式A: 使用独立工具
java com.ruoyi.license.util.LicenseGenerator
- 工具运行成功
- 授权码生成成功
- 授权码已保存
方式B: 使用系统界面
- 登录系统
- 访问授权管理
- 点击生成授权码
- 输入天数并生成
步骤6: 激活授权码
- 访问登录页
- 点击"激活授权码"
- 输入授权码
- 激活成功
✅ 功能测试
测试1: 授权码生成
- 系统界面生成授权码成功
- 独立工具生成授权码成功
- 授权码格式正确
测试2: 授权码激活
- 登录页激活成功
- 系统内激活成功
- 数据库记录正确
测试3: 授权验证
- 有效授权可正常登录
- 无授权无法登录
- 过期授权无法登录
测试4: 授权拦截
- 未授权访问被拦截
- 有效授权可正常访问
- 静态资源不被拦截
测试5: 定时检查
- 定时任务正常执行
- 授权过期自动更新状态
- 在线用户被踢出
测试6: 授权管理
- 授权列表查询正常
- 授权信息显示正确
- 授权删除功能正常
🔍 问题排查
问题1: 编译失败
检查项:
- Maven依赖是否正确
- JDK版本是否匹配
- pom.xml配置是否正确
解决方案:
mvn clean
mvn dependency:resolve
mvn install
问题2: 启动失败
检查项:
- 数据库连接是否正常
- 端口是否被占用
- 配置文件是否正确
解决方案:
- 检查 application.yml 配置
- 查看启动日志错误信息
- 确认数据库表已创建
问题3: 无法激活授权码
检查项:
- 授权码格式是否正确
- 授权码是否已过期
- 密钥是否一致
解决方案:
- 重新生成授权码
- 检查 LicenseUtils 密钥配置
- 查看后台错误日志
问题4: 授权验证不生效
检查项:
- 拦截器是否注册
- 数据库授权记录是否正确
- 定时任务是否执行
解决方案:
- 检查 LicenseConfig 配置
- 验证数据库 status 字段
- 确认 @EnableScheduling 已添加
问题5: 在线用户未被踢出
检查项:
- SessionDAO 是否注入
- 定时任务是否执行
- Shiro配置是否正确
解决方案:
- 检查 LicenseCheckTask 日志
- 验证 SessionDAO bean
- 重启应用服务器
📊 监控指标
运行时监控
- 授权状态正常
- 定时任务执行正常
- 无异常日志
- 内存使用正常
- CPU使用正常
业务监控
- 授权激活次数
- 授权过期提醒
- 用户登录成功率
- 授权拦截次数
🔐 安全检查
配置安全
- 生产环境已修改默认密钥
- 数据库密码已加密
- 授权码传输使用HTTPS
- 敏感日志已脱敏
权限安全
- 授权管理菜单仅管理员可见
- 授权激活操作有日志记录
- 授权码生成有权限控制
- 数据库访问有权限限制
数据安全
- 授权码加密存储
- 定期备份授权数据
- 授权日志完整保存
- 敏感信息不输出到日志
📝 上线清单
上线前
- 所有测试通过
- 代码已提交版本库
- 数据库脚本已准备
- 部署文档已编写
- 回滚方案已准备
上线中
- 备份现有数据
- 执行数据库脚本
- 部署新版本代码
- 生成初始授权码
- 激活授权码
上线后
- 验证功能正常
- 检查日志无异常
- 监控系统运行状态
- 通知相关人员
- 更新运维文档
📞 应急联系
技术支持
- 开发负责人: ___________
- 运维负责人: ___________
- 数据库管理员: ___________
应急预案
- 授权失效 -> 立即激活新授权码
- 系统无法登录 -> 检查授权状态
- 数据丢失 -> 从备份恢复
- 性能问题 -> 调整定时任务频率
检查人: ___________ 检查日期: ___________ 部署环境: [ ] 开发 [ ] 测试 [ ] 生产 部署状态: [ ] 成功 [ ] 失败 [ ] 部分成功