Implement Redis-based user-info with sliding expiration - Read user data directly from Redis instead of calling SecurityService - Implement sliding session expiration (reset TTL on each read) - Redirect to login site if session expired - Enhanced logging for debugging
TRITICAL FIX v2: 从登录 API 中去除 OTK 的消耗 - 在成功登录后, 它叫作 验证 - otk 端点并消耗 OTK 在用户使用它之前
取消过早消耗OTK的终点
找到根原因 : - Kamo-login语中的api/validate和/api/validate-otk都叫保安服务 - 登录后消耗了OTK IMMEDIATELATITEL(在用户使用之前) - 安全服务日志显示OTK在创建后被删除 - 当用户点击重定向链接时, OTK 已经不见了 修补 : - 删除/appi/...
修正 ESLint 错误: 使用当前会议状态
修补 : - 在检查已有的 *** 会话时显示加载旋转器 - 在自动登录检查时隐藏登录表单 - 提供更好的UX(用户查看“ 检查会话... ” 消息) 此修正构建错误 : “ 检查当前会议” 指定了一个值, 但从未使用
添加缺少的 Redis 库用于自动登录和登录结束点
修补构建错误 : - 创建 app/lib/redis.ts 有 read/write Redis 客户端帮助器 - 提供获取RedisReadClient()和获取RedisWriteClient() - 需要/api/自动登录和/api/出入口 - 匹配 kamo- 内部 Redis 配置
Update logout flow to use direct Redis access
Logout Flow Changes: - /logout (page): DELETE Redis session via /api/logout, forward to login/logout - /api/logout: Direct Redis DELETE (no SecurityService call...
实施 SSO 自动登录并完成登录流程
自动 Login 特性 : - 在登录页面负载中检查已有的*** cookie - 直接与 Redis 确认会话 - 如果有效,则创建新的OTK并自动定向到内部应用程序 - 提供无缝再校正而无需再入证书 新建终点 : - /api/自动登录:验证 ***,创建OTK,返回重定向 URL - 日志出处(页):最后登录处...
FORCE REBUILD: Add extensive logging to /api/validate (Direct Redis)
Critical Change: - This endpoint does NOT call SecurityService - It queries Redis DIRECTLY for OTK validation - Extensive logging added to trace every step New...
从 / validate- otk 端点删除 cookie- 设置
简化: - / validate- otk 端点现在只返回 *** ID 和 TTL - 不再设置 cookie(Next.js直接处理) - 添加到会议服务部门的辅助方法 理由: - 下一个. js验证OTK 直接从Redis现在 - 不需要安全服务设置饼干 - 下一个.js 设置自己的客户端 *** cookie...
Make *** cookie client-accessible & validate OTK directly in Next.js
Major Simplifications: - *** cookie is now client-accessible (httpOnly: false) - Both Next.js and Java can read the cookie directly - Cookie expires in 30 minut...
将 *** ID 长度从 512 个字符减少到 128 个字符
变化 : - QQID LENGTH: 512 - > 128 (64字节的 en) - 更新了所有文件和评论 - 更新记录以显示完整的128Char身份证 - OTK长度仍为64个字符(不变) 安全: 512-bit Entropy(128个六分位字符)提供出色的安全 减少饼干大小和 Redis 存储要求
Fix build error and change *** length to 128 chars
Build Fixes: - Escape apostrophe in validate page (') - Add searchParams dependency to useEffect *** Length Change: - Update expected *** length from 512 ...
Add comprehensive debugging UI to validate page
- Show component render count and validation attempt count - Display OTK information and length validation - Show retrieved *** ID (512 chars) when successful -...
将 *** ID 长度增加到 512 个字符,以加强安全性
- *** ID: 512-char 十六进制字符串(256字节的安全随机数据) - OTK ID: 64- Char 十六进制字符串( 32 字节 - 不变) - 更新生成SecureHexString()以接受可配置长度 - 更新所有验证检查,以便使用QQID LENGTH(512)和OTK ID LENGTH(6...
Fix OTK validation duplicate calls issue
- Add useRef to track validation attempts - Prevent duplicate API calls (critical for one-time keys) - Change useEffect deps to empty array (run once on mount) ...
Update OTK validation to use new *** session model
- Extract ***Id from JSON response body (not Set-Cookie header) - SecurityService now returns { success, message, ***Id } - Set *** cookie with 64-char GUID fro...
使用64 Char GUID 执行新的 *** 会话模式
- 为简化会话管理添加会议服务 - *** ID 现在是一个64 Char 十六进制字符串( 不是编码为 KToken) - Redis 密钥格式: ***< 64- char-guid > - Redis值:有用户数据的JSON(用户ID,成员ID,权利,用户名等) - 可配置会话 TTL(默认为30分钟) - OT...
修正成员权利应用列名以避免 MySQL 保留关键字 - 将列名从 Right 更改为 right 以避免 MySQL 保留关键字冲突 - 解决初始化过程中的表格创建错误
固定实体初始化和数据库计划问题 - 添加@Builder. 默认为 OrgFeature 和成员记录状态字段,以确保正确的初始化 - 固定成员权利应用实体 : 将 @JoinColumn 修改为 @ Column 为enum 字段 - 添加 @ ColumnDefault 注释到 EmbRecord State. isActive for database - 删除自定义的与 Lombok 相冲突的 OrgFeatureBuilder 方法 - 从成员服务中删除未使用的 GetPassword Encoder 方法
在所有环境中将密码编码器配置标准化 - 在本地( application. yml) 和 k8s( configmap. yaml) 配置中将胡椒设置为 QQ, 重复为 310000, 以确保与 KamoInitializer Service 的一致性
更新密码花椒以匹配 KamoInitializer Service - 将花椒设置为"f09kf32j0sdfsdfd",以确保各服务的密码散列一致性
删除授权服务依赖, 切换到安全服务
- 删除复杂的授权服务认证逻辑和域重定向 - 以安全服务API呼叫取代OAuth2供应商检测 - 保留OAuth2按钮,用于特定组织的视觉品牌(不起作用) - 维持通过现有/api/login路线的安全服务登录流量 - 简化认证状态管理
修复 Redis 配置
- 删除 SSL 配置( 正在造成类型转换错误) - 取消本地再解放服务的密码要求 - 将主机设定为QQ (每个组的当地) - 简化配置,以便与无密码的Redis合作
修复数据库连接设置
- 更新数据库URL,直接连接到10.8.01:3306 - 将用户名从 root 改为 kamo - 更新从 root- password 到 DB PASWORD 的秘密引用 - 从部署中消除神秘的奥氏秘密依赖
固定安全服务部署配置
- 更新包含完整应用程序的配置图.yml,包括数据库、Redis和外部服务配置 - 更新部署以将配置地图作为应用程序.yml文件挂载 - 使用起动器终点增加适当的健康检查探测器 - 更新图像以使用正确的登记册(10.8.0.1:5000) - 增加Java应用程序的资源限制 - 更新工作流程,以部署到K1M1和K2M1...