Files
FileHost/docs-site/guide/users-and-permissions.md
T
O96u ff20f97522 release: v1.2.1 — login captcha, docs site, and bug fixes
Add slider captcha for web login, VitePress documentation on GitHub Pages,
and fixes for gallery delete refresh, pagination jump, and copy-format persistence.
2026-08-29 11:42:18 +08:00

2.3 KiB
Raw Permalink Blame History

用户与权限

PicHost 使用基于角色的访问控制(RBAC):管理员(admin) 与 普通用户(user)。权限在服务端强制,不可仅靠前端绕过。

角色能力

能力 管理员 普通用户
上传图片 ✓ ✓
查看自己的图库 ✓ ✓
查看全部图库 / 上传者标签 ✓ —
存储后端管理(/storage) ✓ —
系统设置(/settings) ✓ —
开放注册开关 ✓ —
全局 API Token 管理 ✓ —
个人 API Token ✓ ✓
统计页(含注册用户数) ✓ 部分
操作日志 ✓ —

普通用户顶栏:API、统计;用户菜单:修改密码、退出登录。

鉴权场景

场景 鉴权方式 图片归属 / 可见范围
网页上传 Session Cookie 当前登录用户
API 上传 + 个人 Token Auth-Token 头 Token 所属用户
API 上传 + 全局 Token Auth-Token 头 管理员(userId 为空)
Twikoo POST /api/index.php 表单 token 与全局 Token 相同
图库列表 / 搜索 / 删除 Session 或 Token 普通用户仅自己;管理员全部
图片直链 GET /images/... 无(Referer 防盗链) 知道 URL 即可访问

注册与账号

  • 默认仅管理员可创建用户;管理员可在设置中 开放注册
  • 密码使用 scrypt 哈希存储
  • Web 登录需先完成滑动拼图验证(拖动滑块对齐缺口)
  • 登录失败有速率限制

上传偏好与自动删除

  • 上传偏好(首页卡片翻转):客户端预压缩、自动复制链接等,按用户保存
  • 自动删除:管理员可设全局策略;用户可设个人策略。启用后仅影响 之后新上传 的图片

API Token 说明

类型 谁管理 上传归属 典型用途
全局 Token 管理员(API 页) 管理员账号 Twikoo、站点级脚本
个人 Token 各用户(API 页) 该用户 个人博客、私有脚本

若设置了环境变量 API_UPLOAD_TOKEN,则全局 Token 被锁定,见 环境变量。

相关