• awinds
    用户 API
    ID user_api版本 1.4.1插件制作者 awinds免费853 行 / 43.9 KBHook / 路由 / 后台页
    供外部系统安全同步用户、积分和用户状态。启用 telegram_bind 插件时,user.get 额外返回 Telegram 绑定信息。
    app/plugins/user_api/plugin.php
    开发日志已有 3 条

    个人独立维护项目。

    • awinds
      awinds
      版本 1.4.1 68e5f1b31a95 更新:1、修复一些检查出来的问题release
    • awinds
      awinds
      版本 1.4.0 1dc1f16808d0 更新:1、联合telegram_bind插件,如果用户绑定了TGID,接口user.get会返回是否绑定和绑定TGID
    • awinds
      awinds
      版本 1.3.0 d8b2ab1ebcee 更新:1、增加管理用户API功能,可以对接外部系统。
    主楼
  • 质量报告

    插件质量报告

    插件:user_api

    Hook功能范围循环使用频率文件读写修改系统表读写系统表读写自己的表
    request.csrf_exempt请求 CSRF 豁免检查否2----
    site.closed_allow站点关闭访问豁免检查否2----

    颜色说明:黄色表示有数据读写,红色表示 Hook 在系统循环中执行,浅蓝色表示有文件写入。“列表跳过”表示回调在列表路径会提前返回,“回调内”表示操作位于回调自身或其帮助函数的循环体内。“文件批处理”表示逐个处理用户一次提交的文件,属于必要操作,不标记修正。只有操作实际处于需要优化的循环路径时,才会标记“修正❗️”。

    数据字典

    plugin_user_api_nonces

    字段类型可空默认值约束
    idid否-主键、自增
    nonce_keykey否-唯一
    expires_atuint否--
    #1
  • awinds

    版本 1.3.0 更新:
    1、增加管理用户API功能,可以对接外部系统。

    #2
  • awinds

    版本 1.4.0 更新:
    1、联合telegram_bind插件,如果用户绑定了TGID,接口user.get会返回是否绑定和绑定TGID

    #3
  • 350

    🔍 插件审查报告(对照《AI 开发规则》与开发者文档)

    🔒 安全问题

    未发现明显问题。HMAC-SHA256 签名用 hash_equals 恒时比较,时间戳 + 一次性 nonce(UNIQUE 去重)防重放,IP 白名单支持 CIDR,CSRF 豁免仅针对 user_api 路由,默认关闭;密码 password_hash 存储,SQL 全部参数化,错误不泄露细节。

    ⚡ 性能问题

    未发现明显问题。列表分页 + 批量 payload,nonce 清理走 cron,无循环逐条查询。

    🐛 功能/规范缺陷

    1. 删除用户(plugin.php:568-572)直接 DELETE FROM app_users,未触发核心 del('users') 会 fire 的 content.before_delete 钩子,收藏、外链说明等插件依赖该钩子清理自身数据,将留下孤儿记录。请在 DELETE 前 fire content.before_delete(传完整用户行),或复用等价清理。
    2. user_api_write_user 对 email(plugin.php:457)未做 FILTER_VALIDATE_EMAIL 校验,可能写入非法邮箱。
    3. 直读另一插件表 plugin_telegram_bind_links(plugin.php:497-498),违反“插件间不得直接依赖”规范,建议走核心 Hook/接口。
    4. CSS 中 border-radius:8px/6px 写死(plugin.php:31/40/43/44),且 var(--primary)(:41)未定义,应改用 var(--radius) 与 var(--brand)。

    ✅ 修复优先级

    先补删除用户的清理钩子 → email 校验 → 跨插件依赖改造 → CSS 变量。

    #4
  • awinds

    版本 1.4.1 更新:
    1、修复一些检查出来的问题

    #5
  • 399

    🔍 插件审查报告(AI 自动审查,对照《AI 开发规则》与开发者文档;本插件未被 8/18 楼上 350 的报告覆盖,属独立首次审查)

    插件:用户 API(user_api)v1.4.1

    结论:已完成命名规范、生命周期(install/uninstall 幂等)、数据库跨库兼容、红区 Hook 零 DB 读、Hook 真实性(含核心与跨插件依赖核对)、SQL 注入风险、CSRF/权限校验、CSS 变量规范等项审查,未发现安全、性能或功能性问题。

    #6

发表回复

登录后回复