TradingAgents-CN v0.1.14 发布详解:用户权限管理与 Web 认证系统的正式落地

发布时间:2026/9/12 2:28:13
TradingAgents-CN v0.1.14 发布详解:用户权限管理与 Web 认证系统的正式落地
TradingAgents-CN v0.1.14 发布详解用户权限管理与 Web 认证系统的正式落地【免费下载链接】TradingAgents-CN基于多智能体LLM的中文金融交易框架 - TradingAgents中文增强版项目地址: https://gitcode.com/GitHub_Trending/tr/TradingAgents-CNv0.1.14 是 TradingAgents-CN 的一个重要功能正式版本核心交付物是完整的用户权限管理系统与 Web 认证体系——包括用户注册登录、多级角色权限、会话持久化与审计日志以及配套的命令行用户管理工具。本文以官方发布说明为主体结合当前仓库源码web/utils/auth_manager.py、web/components/login.py、scripts/user_password_manager.py 等逐层拆解该版本的设计与实战操作读者将掌握默认账号机制、权限模型、用户管理 CLI 全命令、环境变量配置以及从 v0.1.13 升级的完整流程。版本概述从功能预览到正式稳定v0.1.14 基于 main 分支发布版本类型为正式版Stable Release。在保持原有金融分析功能多智能体 LLM 分析、A 股/美股数据接入、研究报告生成等不变的前提下该版本为多用户环境下的安全使用补齐了企业级短板完整的用户注册、登录与退出流程管理员 / 普通用户的多级权限控制会话管理与状态保持含前端缓存恢复与自动登出密码哈希存储与安全验证用户操作审计日志与活动仪表板。发布说明明确指出经过预览版充分测试与用户反馈核心功能已稳定可安全部署到生产环境。当前仓库中 v0.1.14 的专项测试目录 tests/0.1.14 依然完整保留可作为回归验证依据。用户权限管理系统核心功能与技术实现权限模型角色与权限点系统采用角色role 权限点permissions两级模型。角色决定默认权限集合权限点用于页面级 / 操作级鉴权。发布说明中的默认角色定义如下角色默认权限能力范围管理员adminanalysis、config、admin分析、配置管理、用户/系统管理普通用户useranalysis仅金融分析功能该模型在源码中可完整印证AuthManager.authenticate()返回包含username、role、permissions的用户信息字典check_permission()通过比对permissions列表完成鉴权require_permission()则在权限不足时输出错误提示并阻断操作见 web/utils/auth_manager.py 与 web/utils/auth_manager.py。在 Web 主程序中鉴权被直接嵌入页面逻辑配置页、管理页、分析页分别通过require_permission(config)、require_permission(admin)、require_permission(analysis)做入口拦截见 web/app.py实现每个操作都做权限检查的发布承诺。密码安全SHA256 哈希存储密码不以明文落盘而是统一使用 SHA256 哈希后存储。AuthManager._hash_password()与命令行工具中的hash_password()采用同一实现hashlib.sha256(password.encode()).hexdigest()保证 Web 登录与 CLI 管理两条路径的哈希结果一致web/utils/auth_manager.py。统一认证管理器与全局实例新增的web/utils/auth_manager.py中定义了AuthManager类并在模块末尾导出全局实例auth_manager供登录组件、侧边栏、主应用等多处共享避免重复初始化。其主要职责包括_ensure_users_file()首次运行时自动创建用户配置文件并写入默认账号authenticate()/login()校验凭据、写入st.session_state认证状态is_authenticated()检查认证状态并处理会话超时自动登出logout()清理会话状态与前端缓存restore_from_cache()从前端 localStorage 恢复登录状态见 web/utils/auth_manager.py。Web 用户认证系统界面与安全增强现代化登录界面新增 web/components/login.py 提供完整登录界面包含渐变主题、毛玻璃卡片、响应式布局与实时反馈响应式登录表单用户名 / 密码输入框支持移动端与桌面端登录反馈成功时提示正在跳转并st.rerun()失败时提示用户名或密码错误功能特色展示登录页底部展示智能分析、深度研究、实时数据、风险控制四项能力卡片侧边栏用户信息卡render_sidebar_user_info()展示用户名、角色中文名、登录时间与在线状态底部提供安全退出按钮web/components/login.py。登录组件通过多级try/except导入链兼容不同运行方式相对导入、web.utils导入、绝对路径导入并在全部失败时回退到SimpleAuthManager兜底实现体现了较强的健壮性设计。会话安全与自动登出前端认证缓存登录状态写入浏览器localStoragekey 为tradingagents_auth并注入AuthCacheJS 对象页面监听click/keypress/scroll/mousemove事件持续刷新lastActivity10 分钟无操作自动清除登录状态页面加载时若缓存有效则通过postMessage通知应用恢复登录见 web/utils/auth_manager.py。服务端会话超时检查is_authenticated()同时校验login_time与当前时间的差值超时则调用logout()自动登出双端配合防止会话劫持。审计日志登录成功、登录失败区分用户不存在与密码错误、登出等事件均通过user_activity_logger记录web/utils/auth_manager.py配合 web/components/user_activity_dashboard.py 与 web/components/operation_logs.py 形成完整的用户行为追溯链。默认账号与首次安全配置默认账号信息系统初始化AuthManager._ensure_users_file()或命令行reset时会自动创建以下默认账号web/utils/auth_manager.py用户名密码角色权限adminadmin123管理员analysis、config、adminuseruser123普通用户analysis重要安全提醒首次部署后请立即修改默认密码防止默认凭据被利用默认账号信息持久化在web/config/users.json由AuthManager在首次运行时自动生成目录不存在会自动创建若用户配置文件缺失命令行工具与认证管理器都会自动重建默认配置保证系统可恢复性。用户管理命令行工具完整操作手册发布说明为系统提供了三套用户管理工具当前仓库均完整存在Python 脚本scripts/user_password_manager.py推荐跨平台PowerShell 脚本scripts/user_manager.ps1WindowsWindows 批处理scripts/user_manager.bat使用文档scripts/USER_MANAGEMENT.mdPython 脚本命令详解# 列出所有用户用户名、角色、权限、创建时间 python scripts/user_password_manager.py list # 修改用户密码自动重新计算 SHA256 哈希 python scripts/user_password_manager.py change-password admin newpassword123 # 创建普通用户 python scripts/user_password_manager.py create-user newuser password123 --role user # 创建管理员用户 python scripts/user_password_manager.py create-user newadmin adminpass123 --role admin # 创建用户并自定义权限列表 python scripts/user_password_manager.py create-user analyst analyst123 --role user --permissions analysis # 删除用户交互式确认禁止删除最后一个管理员 python scripts/user_password_manager.py delete-user olduser # 重置为默认配置交互式确认将删除所有现有用户 python scripts/user_password_manager.py reset命令行为要点源码级说明list以表格形式输出用户名、角色、权限列表与创建时间时间戳转为本地时间格式化见 scripts/user_password_manager.pychange-password目标用户不存在时直接报错退出不产生副作用create-user默认权限按角色自动分配——user角色为[analysis]admin角色为[analysis, config, admin]也可用--permissions覆盖delete-user内置保护逻辑当目标为管理员且系统仅剩该一个管理员时拒绝删除避免系统失去管理入口scripts/user_password_manager.pyreset恢复admin/admin123与user/user123双默认账号。Windows 平台使用PowerShell 脚本与批处理提供相同能力若 PowerShell 执行受限先放开执行策略Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser数据管理与存储优化MongoDB 集成与用户数据存储发布说明描述了 MongoDB 集成增强连接池优化、标准化的用户/权限数据模型、查询索引与备份恢复机制。需要说明的是当前仓库中认证模块的默认实现将用户数据持久化于本地 JSON 文件web/config/users.json同时仓库保留了完善的 MongoDB / Redis 存储组件用于其他数据域web/utils/mongodb_report_manager.py报告数据 MongoDB 存储管理web/utils/redis_session_manager.pyRedis 会话缓存对应发布说明中Redis 6.0 可选用于会话缓存的环境要求web/utils/smart_session_manager.py智能会话管理器可按需切换存储后端。数据目录重组与迁移数据目录结构得到重新整理缓存策略优化以提升读写性能新增迁移脚本 scripts/migrate_data_directories.py既用于数据目录迁移也承担升级前的数据备份职责--backup参数明确保持与旧版本数据的兼容性现有分析数据与配置在升级后不变。测试覆盖v0.1.14 专项验证发布说明声明本版本新增 6 个专项功能测试脚本在仓库 tests/0.1.14 中均可找到对应文件可直接作为回归测试执行tests/0.1.14/test_google_tool_handler_fix.py —— Google 工具处理器修复验证tests/0.1.14/test_guide_auto_hide.py —— UI 引导自动隐藏功能测试tests/0.1.14/test_online_tools_config.py —— 在线工具配置与选择逻辑测试tests/0.1.14/test_real_scenario_fix.py —— 真实使用场景的端到端测试tests/0.1.14/test_tool_selection_logic.py —— 工具选择逻辑完整性测试tests/0.1.14/test_us_stock_independence.py —— 美股分析功能独立性验证。此外该目录还包含test_analysis_save.py、test_backup_datasource.py、test_comprehensive_backup.py、test_fallback_mechanism.py、test_data_structure.py、test_tushare_direct.py等配套测试与数据准备/清理脚本从数据保存、数据源备份、回退机制、数据结构多个维度保障版本质量。技术架构改进Web 界面增强侧边栏优化web/components/sidebar.py 重构支持用户信息展示与权限感知的导航项渲染组件模块化登录、侧边栏、结果展示、进度显示等拆分为独立组件提升复用性web/components 目录下login.py、sidebar.py、results_display.py、analysis_form.py、async_progress_display.py等响应式设计登录页与侧边栏均针对移动端适配性能优化通过组件拆分与缓存策略减少页面加载时间。核心代理修复修复核心代理与工具处理逻辑对应test_google_tool_handler_fix.py与test_tool_selection_logic.py的验证对象解决 A 股市场社交媒体分析师显示问题改进异常处理与错误恢复对应test_fallback_mechanism.py优化代理响应速度与稳定性。部署、升级与配置环境要求Python 3.10MongoDB 4.4Redis 6.0可选用于会话缓存原有依赖保持不变仍以requirements.txt为准从 v0.1.13 升级步骤手动升级流程发布说明规定的完整顺序停止现有服务备份数据和配置python scripts/migrate_data_directories.py --backup更新代码到 v0.1.14git checkout main git pull origin main pip install -r requirements.txt运行数据迁移scripts/migrate_data_directories.py更新配置文件按需追加下方环境变量创建 / 调整管理员账号如需python scripts/user_password_manager.py create-user admin your_password --role admin重启服务并验证登录。新增环境变量配置发布说明补充了以下环境变量用于控制认证与会话行为# 用户认证配置 USER_AUTH_ENABLEDtrue SESSION_SECRET_KEYyour_secret_key_here SESSION_TIMEOUT3600 # MongoDB 用户数据库 MONGO_USER_DBtradingagents_users MONGO_USER_COLLECTIONusers其中SESSION_TIMEOUT对应会话超时控制单位为秒示例值 3600 即 1 小时前端缓存层的无操作自动登出默认约 10 分钟见AuthCacheJS 中的10 * 60 * 1000毫秒超时。实际部署时应使用足够强度的随机字符串替换SESSION_SECRET_KEY。兼容性与版本说明兼容性保证向后兼容完全兼容 v0.1.13 的全部功能数据兼容现有分析数据与配置保持不变API 兼容所有现有 API 接口保持兼容。本版本已修复问题修复预览版中的用户权限界面样式问题优化大量并发用户登录时的性能改进大数据量场景下数据迁移的处理速度。结语v0.1.14 为 TradingAgents-CN 补齐了面向多用户生产环境的最后一块拼图从AuthManager的认证与会话管理、login.py的现代登录界面到user_password_manager.py的完整 CLI 管理链路再到tests/0.1.14的专项回归验证形成了一套闭环的用户安全体系。对于要部署到团队或生产环境的用户建议严格按上文升级步骤操作并第一时间修改默认密码、配置强随机SESSION_SECRET_KEY随后即可在权限可控的前提下安全开放分析能力。【免费下载链接】TradingAgents-CN基于多智能体LLM的中文金融交易框架 - TradingAgents中文增强版项目地址: https://gitcode.com/GitHub_Trending/tr/TradingAgents-CN创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考