管理员权限的实现

时间:2024-03-27 13:51:20

1 管理员权限的实现

1.1 设计分析

问题:

  • 如何定义聊天室管理员这个角色?
  • 如何区分管理员和普通聊天用户?
  • 如何实现管理员所具备的功能?

管理员的定义:

  • 管理员是聊天室的“超级用户”,拥有特殊权限:
    • 因此,在服务端必须记录每个聊天用户的权限标识。
  • 管理员通常是由普通用户“提权”得到的:
    • 管理员账户需要通过特殊的流程处理才能获得。

管理员权限的定义:

  • 禁言:禁止某个用户(ID)发送聊天消息。
  • 恢复:恢复某个用户(ID)的聊天权限。
  • 封帐号:禁止某个用户(ID)登录聊天室。

管理员相关功能设计:
管理员权限的实现
管理交互流程:
管理员权限的实现
引入管理员后的登录交互:
管理员权限的实现
控制消息设计:
管理员权限的实现

1.2 代码实现

客户端代码修改:

MainWindow.h:
管理员权限的实现

MainUI.cpp:
管理员权限的实现
管理员权限的实现
MainWinSlot.cpp:
管理员权限的实现
管理员权限的实现
管理员权限的实现
管理员权限的实现
服务端代码修改:
管理员权限的实现
管理员权限的实现
管理员权限的实现
管理员权限的实现


参考资料:

  1. QT实验分析教程