fix(权限管理): 增强权限检查的类型安全并修复权限引用

修复权限检查中可能传入非Permission类型导致的错误,将echo插件的权限引用从MessageEvent.ADMIN迁移到Permission.ADMIN
This commit is contained in:
2026-01-19 14:21:46 +08:00
parent 8505f5ff11
commit 081401c54e
2 changed files with 8 additions and 1 deletions

View File

@@ -152,6 +152,12 @@ class PermissionManager(Singleton):
检查用户是否具有指定权限级别
"""
user_permission = await self.get_user_permission(user_id)
# 增强类型检查防止将property对象等错误类型传递进来
if not isinstance(required_permission, Permission):
logger.error(f"权限检查失败required_permission 不是 Permission 枚举类型,而是 {type(required_permission).__name__}")
return False
return user_permission >= required_permission
async def get_all_user_permissions(self) -> Dict[str, str]: