更新记录

1.0.0(2025-08-01) 下载此版本

1.0.0


平台兼容性

云端兼容性

阿里云 腾讯云 支付宝云
×

uni-app(4.75)

Vue2 Vue3 Chrome Safari app-vue app-nvue Android iOS 鸿蒙
- - - - - - - - -
微信小程序 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 快应用-华为 快应用-联盟
- - - - - - - - - - -

uni-app x(4.74)

Chrome Safari Android iOS 鸿蒙 微信小程序
- - - - - -

云函数类插件通用教程

使用云函数类插件的前提是:使用HBuilderX 2.9+


初始化管理员账户说明

概述

本文档说明如何在 wx-ai-admin 管理系统中初始化超级管理员账户。

功能特点

  • 自动检测:系统启动时自动检测是否已存在管理员账户
  • 安全初始化:使用密钥验证,防止恶意调用
  • 完整权限:超级管理员拥有系统所有权限
  • 友好界面:提供可视化的初始化页面

使用流程

1. 系统首次启动

当系统首次启动时,会自动检测是否存在管理员账户:

  • 如果没有管理员账户:自动跳转到初始化页面 /pages/init/init
  • 如果已有管理员账户:跳转到登录页面 /pages/login/login

2. 初始化管理员账户

在初始化页面,需要填写以下信息:

  • 用户名:3-20个字符,作为登录凭证
  • 昵称:显示名称,用于界面展示
  • 密码:至少6个字符,建议使用强密码
  • 确认密码:确保密码输入正确

3. 创建成功

创建成功后,系统会:

  • 显示成功提示
  • 自动跳转到登录页面
  • 可使用刚创建的账户登录

技术实现

云函数

创建了专门的 initAdmin 云函数,包含以下功能:

检查管理员是否存在

// 调用示例
const result = await uniCloud.callFunction({
  name: 'initAdmin',
  data: {
    action: 'checkAdminExists',
    initKey: 'wx-ai-admin-init-2024'
  }
})

创建超级管理员

// 调用示例
const result = await uniCloud.callFunction({
  name: 'initAdmin',
  data: {
    action: 'createSuperAdmin',
    initKey: 'wx-ai-admin-init-2024',
    username: 'admin',
    nickname: '超级管理员',
    password: 'password123'
  }
})

数据库结构

超级管理员账户包含以下字段:

{
  "username": "用户名",
  "password": "密码哈希值",
  "salt": "密码盐值",
  "nickname": "昵称",
  "role": "super_admin",
  "permissions": [
    "user_view", "user_edit", "user_delete",
    "data_view", "data_export",
    "system_config", "admin_manage",
    "points_manage", "ai_usage_view",
    "task_manage", "vip_manage"
  ],
  "status": "active",
  "createTime": "2024-01-01T00:00:00.000Z",
  "createdBy": "system"
}

安全措施

  1. 密钥验证:使用固定密钥 wx-ai-admin-init-2024 防止恶意调用
  2. 唯一性检查:确保只能创建一个超级管理员
  3. 密码加密:使用 SHA256 + 盐值加密存储密码
  4. 权限控制:只有超级管理员可以创建其他管理员

注意事项

  1. 首次部署:系统首次部署时必须先初始化管理员账户
  2. 密码安全:建议使用强密码,包含字母、数字和特殊字符
  3. 账户唯一:系统只允许存在一个超级管理员账户
  4. 权限重要:超级管理员拥有所有权限,请妥善保管账户信息

常见问题

Q: 如果忘记了超级管理员密码怎么办?

A: 可以通过以下方式重置:

  1. 直接在数据库中删除 admin_users 集合中的超级管理员记录
  2. 重新访问系统,会自动跳转到初始化页面
  3. 重新创建超级管理员账户

Q: 可以创建多个超级管理员吗?

A: 不可以。系统设计为只允许一个超级管理员账户,其他管理员需要由超级管理员创建。

Q: 初始化密钥可以修改吗?

A: 可以。在 initAdmin 云函数中修改 INIT_KEY 常量即可。

文件结构

wx-ai-admin/
├── pages/
│   └── init/
│       └── init.vue                 # 初始化页面
├── uniCloud-aliyun/
│   └── cloudfunctions/
│       └── initAdmin/
│           ├── index.js             # 初始化云函数
│           └── package.json         # 依赖配置
├── App.vue                          # 应用入口(包含检测逻辑)
├── pages.json                       # 页面路由配置
└── 初始化管理员账户说明.md           # 本说明文档

更新日志

  • v1.0.0 (2024-01-01)
    • 初始版本
    • 支持自动检测和初始化管理员账户
    • 提供可视化初始化界面
    • 实现安全的密钥验证机制

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

暂无用户评论。