Skip to content

权限配置

本文档详细介绍了 EsbpmPlugin 的所有权限节点,帮助服务器管理员正确配置玩家权限。

权限系统概述

EsbpmPlugin 使用 Minecraft 的权限系统来控制玩家对插件功能的访问。这些权限可以通过大多数权限管理插件进行配置,如 LuckPerms、PermissionsEx 等。

权限节点列表

基础权限

权限节点默认值描述
esbpm.usetrue允许玩家使用插件的基本功能

飞行权限

权限节点默认值描述
esbpm.command.flyop允许玩家使用 /fly 命令切换飞行状态
esbpm.fly.bypassop允许玩家绕过飞行速度限制
esbpm.fly.survival.bypassop允许玩家绕过生存模式下的飞行限制

游戏模式权限

权限节点默认值描述
esbpm.gamemode.bypassop允许玩家绕过强制游戏模式设置
esbpm.gamemode.changeop允许玩家使用游戏模式切换命令

速度效果权限

权限节点默认值描述
esbpm.speed.bypassop允许玩家绕过速度效果限制
esbpm.speed.customop允许玩家设置自定义速度等级

管理权限

权限节点默认值描述
esbpm.adminop授予所有管理权限(包含所有其他权限)
esbpm.reloadop允许玩家使用 /esbpm reload 命令重载插件配置
esbpm.config.editop允许玩家编辑插件配置文件(通过命令)
esbpm.bypass.banneditemsop允许玩家绕过危险物品限制

权限配置示例

以下是使用不同权限管理插件配置 EsbpmPlugin 权限的示例。

LuckPerms 配置示例

使用 LuckPerms 插件配置权限的示例命令:

bash
# 授予玩家使用飞行命令的权限
/lp user <玩家> permission set esbpm.command.fly true

# 授予生存者组绕过强制游戏模式的权限
/lp group survivors permission set esbpm.gamemode.bypass true

# 禁止游客使用飞行功能
/lp group guests permission set esbpm.command.fly false

# 授予管理员所有权限
/lp user <管理员> permission set esbpm.admin true

PermissionsEx 配置示例

使用 PermissionsEx 插件配置权限的示例命令:

bash
# 授予玩家使用飞行命令的权限
/pex user <玩家> add esbpm.command.fly

# 授予生存者组绕过强制游戏模式的权限
/pex group survivors add esbpm.gamemode.bypass

# 禁止游客使用飞行功能
/pex group guests remove esbpm.command.fly

# 授予管理员所有权限
/pex user <管理员> add esbpm.admin

权限最佳实践

基于角色的权限管理

建议根据服务器中的玩家角色分配不同级别的权限:

  1. 游客/新手

    • 基本使用权限 esbpm.use
    • 可能限制使用某些高级功能
  2. 普通玩家

    • 基本使用权限 esbpm.use
    • 飞行权限 esbpm.command.fly
    • 根据需要授予其他功能权限
  3. VIP/高级玩家

    • 所有普通玩家权限
    • 可能授予绕过某些限制的权限
    • 可能授予自定义速度等级的权限
  4. 管理员/操作员

    • 所有权限 esbpm.admin
    • 或分别授予 esbpm.reload, esbpm.config.edit 等管理权限

最小权限原则

遵循最小权限原则,只授予玩家执行其角色所需的权限:

  1. 不要默认授予所有玩家高级权限
  2. 逐步增加权限,而不是一次性授予过多
  3. 定期审查权限设置,确保没有滥用

权限组管理

使用权限组来简化权限管理:

  1. 创建对应不同玩家类型的权限组
  2. 为每个组分配适当的权限
  3. 将玩家添加到相应的组中
  4. 如需调整权限,只需修改组权限即可影响所有组成员

常见权限问题

玩家无法使用命令

  • 问题:玩家报告无法使用插件命令(如 /fly
  • 解决方法
    1. 确认玩家是否拥有正确的权限节点(esbpm.command.fly
    2. 检查权限插件配置是否正确
    3. 确认玩家是否处于正确的权限组
    4. 尝试重新加载权限插件配置

权限冲突

  • 问题:多个权限插件可能导致权限冲突
  • 解决方法
    1. 只使用一个权限管理插件
    2. 检查是否有其他插件覆盖了相同的权限
    3. 查看服务器日志是否有与权限相关的错误信息

权限未立即生效

  • 问题:配置权限后,变更未立即对玩家生效
  • 解决方法
    1. 尝试让玩家重新登录服务器
    2. 使用权限插件的重载命令
    3. 检查权限配置是否正确应用