权限与安全
日志、事件订阅、定时器和受控任务不需要 manifest 权限。插件首次请求其他能力时,App 会显示权限确认;后续版本增加权限时需要重新授权。
权限分组
| 分组 | 示例 | 说明 |
|---|---|---|
| 私有存储 | plugin.storage | 只能保存到该插件自己的数据区。 |
| 游戏读取 | game.state.read、game.entity.read | 读取公开的游戏和实体状态。 |
| 消息读取 | chat.read、dialog.read | 可能让插件看到服务器或聊天内容。 |
| 网络能力 | network.stats.read、network.inspect、network.intercept | 有界传输统计、数据包/RPC 观测或尽力而为的发送取消。 |
| 交互拦截 | chat.intercept、textdraw.intercept | 修改或取消受支持的交互。 |
| UI | ui.menu、ui.draw、ui.chat、ui.input、剪贴板权限 | 添加设置、绘制 HUD、显示通知、处理触摸或访问剪贴板。 |
| 音频与消息 | audio.playback、chat.send | 控制插件拥有的音频流,或经过正常拦截链发送消息。 |
| 受控写入 | game.player.write、game.vehicle.write | 修改受支持的本地玩家或载具状态。 |
| 物理与摄像机 | game.physics.override、game.camera.control | 受控物理效果或摄像机跟随租约的高风险权限。 |
永久禁止的能力
Plugin API 1.1 不提供任意文件系统访问、Native 内存读写、Native Hook、Java 反射、Native 库加载或无限制网络访问。网络数据只能以有界快照提供,发送拦截在运行时无法安全同步执行时会放行。
启用前检查
- 查看插件说明和权限。
- 优先使用官方目录或可信作者。
- 简单视觉插件不应无理由申请聊天拦截或游戏写入。
- 对持续超时或行为异常的插件立即停用。
权限只能限制访问范围,不能代替对作者的信任。插件仍可能滥用用户已经允许它读取的数据。