联合封禁API文档

提供玩家封禁信息上传与封禁状态检查接口,帮助开发者构建安全的游戏环境

服务状态: 在线 版本: v1.2.0

封禁状态检查接口

POST
POST https://uniteban.mcwaf.cn/api.php

此接口用于检查玩家是否在联合封禁云端黑名单中,可在玩家加入服务器前进行安全检查。

请求参数

参数名 类型 是否必须 描述
xuid String 可选 玩家的XUID
clientid String 可选 客户端ID
ip String 可选 玩家IP地址
提示: 至少需要提供一项参数才能进行有效的封禁检查。

响应示例

玩家已被封禁 { "exists": true, "message": "Record exists", "searched_fields": [ "xuid" ], "search_values": { "xuid": "2535441386894771" }, "query_counts": [ { "record_id": "574", "query_count": 31 } ], "reason": "偷窃玩家物品而且拆家", "statistics": { "total_visits": "429897", "total_blocks": "486" } }
玩家未被封禁 { "exists": false, "message": "Record not found", "searched_fields": [ "xuid" ], "search_values": { "xuid": "2535461883808331" }, "query_counts": [ ], "reason": null, "statistics": { "total_visits": "429836", "total_blocks": "485" } }

上传封禁玩家数据接口

POST
POST https://uniteban.mcwaf.cn/innerapi.php

此接口用于注册服务器和将玩家上传到云黑数据库中。

请求参数

参数名 类型 是否必须 描述
mac String 必填 上传服务器的MAC地址
token String 必填 32位随机字符串
name String 必填 玩家的Name
xuid String 可选 玩家的xUID
uuid String 可选 玩家的uUID
clientid String 可选 玩家的客户端/设备ID
ip String 可选 玩家IP地址
reason String 必填 封禁原因
提示: XUID,UUID,ClientID,IP至少有一项。

响应示例

服务器未获取上传权限 { "status": "error", "message": "Permission denied. New record created." }
缺少参数 { "status": "error", "message": "Insufficient parameters" }
缺少参数 { "status": "error", "message": "Insufficient parameters" }
玩家成功新添加到云黑 { "status": "success", "action": "created_new_row" }
上传的玩家发生数据合并/更新 { "status": "success", "action": "merged_rows", "merged_count": 1, "earliest_created_at": "2025-07-01 20:37:17", "total_query_count": 0, "new_data": { "name": [ "PHEyeji" ], "xuid": [ ], "uuid": [ ], "clientid": [ ], "ip": [ "1.1.1.1" ] } }

最佳实践与注意事项

重要安全提示

1. 请妥善保管你的token,不要将其公开或包含在客户端代码中

2. 建议在服务器端进行封禁检查,避免客户端被绕过

3. 对玩家IP等敏感信息进行适当脱敏处理

推荐集成方式

在玩家尝试加入服务器时,按照以下流程进行安全检查:

  1. 服务器每次启动时往innerapi.php发送mac和token用于注册,如果没有token则生成32位随机字符串作为token并长期保存不变
  2. 在玩家预加入阶段(onPreJoin)收集玩家信息
  3. 调用api.php接口检查玩家是否在封禁名单中
  4. 如果exists为true,立即踢出玩家并记录日志
  5. 对于确认的恶意玩家,调用innerapi.php上传封禁信息

处理私有IP和本地网络

为了避免误封本地网络玩家,建议在处理IP地址时排除以下情况:

  • IPv4私有地址范围:10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16, 169.254.0.0/16, 127.0.0.0/8
  • IPv6本地地址:fc00::/7, fe80::/10, ::1/128