Files
StarlightRadio/.gitignore
T
Xiao-no-love f0fe50e484 feat: StarLight 第三方登录 + 安全加固 + 循环池 + 热配置
功能:
- StarLight Yggdrasil 第三方登录(后端中转,accessToken 不落地)
- 管理员可视化权限管理(用户列表 + 一键授予/移出)
- 设置页热配置(11 项可编辑,立即生效)
- 循环池(每流独立手动歌单,队列空时随机不重复抽取)
- 登录页统一主站浅色风格
- 全站改名「Starlight专属电台」
- 删除关于页

安全:
- 全局 CSRF 防护(双提交 Cookie)
- 登录限流防 XFF 伪造、错误信息脱敏
- 权限中间件 requireAdminForWrites(读放行/写 admin)
- 密码哈希存储(scrypt/sha256)
- SSRF 防护(封面下载域名白名单)
- 空 catch 加日志、SSE 连接上限

修复:
- 多角色账号 selectedProfile 缺失
- 普通用户越权删歌(V4)
- streams 写操作越权(V9)
- 设置页布局溢出

测试:38 项全绿(api16 / e2e17 / write5)
2026-10-06 16:37:03 +08:00

56 lines
736 B
Plaintext

# 依赖
node_modules/
# 运行时生成的 HLS 产物(可随时重建)
hls/
hls_cache/
# 运行时数据(数据库)
*.db
*.db-wal
*.db-shm
# 旧的 JSON 数据(已废弃)
playlist.json
heat.json
metadata.json
# 本地化封面与第三方前端资源
public/covers/
public/vendor/
# 上传临时目录
tmp/
uploads/
# 日志与临时文件
*.log
npm-debug.log*
*.tmp
# 编辑器 / 系统
.vscode/
.idea/
.DS_Store
Thumbs.db
# 音频文件(体积大,不入库)
audio/*.mp3
audio/*.m4a
audio/*.flac
audio/*.wav
audio/*.aac
audio/*.ogg
# Python 缓存
__pycache__/
*.pyc
# 备份文件
*.bak_*
*.bak
# 安全报告(含敏感信息,本地保留)
SECURITY_PENTEST.md
SECURITY_REVIEW.md
# 临时归档
*.tgz