MySQL服务器的访问控制情景分析
创始人
2024-07-23 05:11:28
0

之前为大家介绍了MySQL授权表概述和MySQL服务器的访问控制,接下来为大家继续介绍“MySQL服务器的访问控制”。以下就是具体的情景分析。

情景1:失败的连接尝试

  用户“alessia”连接服务器时将被拒绝。因为,主机、用户和/或密码与保持在user表中的不匹配, 所以会拒绝用户的请求。

情景2:user表中数据库权限为N,db表中数据库权限为Y

  1. 用户wj尝试连接时将会成功。

  2. 用户wj试图在数据库oats上执行Select命令。

  3. 服务器查看user表,对应于Select命令的条目的值为N,即表示拒绝。

  4. 服务器然后查看db表,对应于Select命令的表项的值为Y,即表示允许。

  5. 该请求将成功执行,因为该用户的db表中的SELECT字段的值为Y。

情景3:user表中数据库权限为Y,db表中数据库权限为N

  1. 用户wj尝试连接时将会成功。

  2. 用户wj试图在数据库oats上执行Select命令。

  3. 服务器查看user表,对应于Select命令的表项的值为Y,即表示允许。 因为在user表之内授与的权限是全局性的,所以该请求会成功执行。

情景4:user表中数据库权限为N,db表中数据库权限为N

  1. 用户wj尝试连接时将会成功。

  2. 用户wj试图在数据库oats上执行Select命令。

  3. 服务器查看user表,对应于Select命令的表项的值为N,即表示拒绝。

  4. 服务器现在会查看db表,对应于Select命令的表项的值为N,即表示拒绝。

  5. 服务器现在将查找tables_priv和columns_priv表。如果用户的请求符合表中赋予的权限,则准予访问。 否则,访问就会被拒绝。

  对于tables_priv和columns_priv表,后面会进一步加以详述。

情景5:让我们假定下列情况为真:

user表中用户wj的host字段的值为%。
db表中用户wj对应的host字段的值为空。
这时会发生什么情况呢?

  1. 用户wj尝试通过一个给定主机进行连接。

  2. 假设密码是正确的,那么就会连接成功,因为user表指出只要是通过用户名wj和有关密码进行连接的话,任何(字符%所代表的含义)主机都是允许的。

  3. MySQL服务器将查找db表,不过,这里没有指定主机。

  4. MySQL服务器现在将查看host表。如果该用户要连接的数据库以及用户建立连接时所在主机的名称都位于host表中,那么该用户就能够按照host表中所列出的权限来执行命令。 否则的话,用户将无法执行命令,实际上更本就无法连接。

 相信上面的知识已经可以让大家对数据库授权系统有一个大概的了解,这也为以后更深入的学习数据库系统打下了坚实的基础,希望这篇文章对大家能有所帮助。

【编辑推荐】

  1. MySQL服务器的内部锁定
  2. 查看MySQL服务器的进程
  3. MySQL服务器创建临时文件数的合理配置

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
各种千兆交换机的数据接口类型详... 千兆交换机有很多值得学习的地方,这里我们主要介绍各种千兆交换机的数据接口类型,作为局域网的主要连接设...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
规避非法攻击 用好路由器远程管... 单位在市区不同位置设立了科技服务点,每一个服务点的员工都通过宽带路由器进行共享上网,和单位网络保持联...
范例解读VB.NET获取环境变... VB.NET编程语言的使用范围非常广泛,可以帮助开发人员处理各种程序中的需求,而且还能对移动设备进行...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...