【MySQL数据库管理问答题】第6章 管理 MySQL 用户

embedded/2024/9/23 17:07:24/

目录

1. 对于验证和授权,它们有什么区别,各自发生在用户访问过程的哪个阶段?

2. MySQL 用户账户的定义信息保存在数据库的什么地方?

3. 在定义用户时,要避免在主机名中使用通配符,除非绝对必要。请给出如何检查用户定义中包含有通配符的办法。

4. 角色是一个不允许连接的帐户,因为它是作为锁定帐户创建的。可以使用 ALTER USER 语句解锁角色,将其转换为允许连接的帐户。请问这个说法对不对,给出验证结果。

5. 请说明 FILE、PROCESS、RELOAD 这三个系统权限的作用?

6. 在授予权限时,WITH GRANT OPTION 或 WITH ADMIN OPTION 子句会对被授予的权限有什么影响?

7. 在权限管理中,不能将口令和对象直接关联,不能对表行进行授权,不能明确拒绝对特定对象比如表的访问。谈一下你对这三个判断的理解。

8. 请说明授权表的内容和它的作用?

9. 你是如何理解“最小权限原则”的?


1. 对于验证和授权,它们有什么区别,各自发生在用户访问过程的哪个阶段?

验证和授权的区别及其在用户访问过程中的阶段
验证 (Authentication) :是确认用户身份的过程,验证阶段会发生在用户尝试连接数据库时。MySQL 通过验证用户的用户名和密码,确保用户是其声称的身份。
授权 (Authorization) :是在用户通过验证后确定其可以访问的资源和操作的过程。授权阶段发生在用户登录成功后,MySQL 会检查用户的权限,决定用户可以执行哪些 SQL 操作(如 SELECT、 INSERT 等)或访问哪些数据库对象(如表、视图等)。

2. MySQL 用户账户的定义信息保存在数据库的什么地方?

MySQL 用户账户的定义信息保存在 mysql 数据库user 表中。

3. 在定义用户时,要避免在主机名中使用通配符,除非绝对必要。请给出如何检查用户定义中包含有通配符的办法。

检查用户定义中包含有通配符的办法
使用以下 SQL 查询检查 MySQL 用户定义中是否包含通配符:
SELECT user, host FROM mysql.user WHERE host LIKE '%';
该查询会返回主机名中包含通配符的所有用户。

4. 角色是一个不允许连接的帐户,因为它是作为锁定帐户创建的。可以使用 ALTER USER 语句解锁角色,将其转换为允许连接的帐户。请问这个说法对不对,给出验证结果。

关于角色是否可以通过解锁来转换为允许连接的账户的验证:
说法错误;
角色在 MySQL 中是一个不能直接连接的实体。即使使用 ALTER USER 语句解锁角色,角色依然不能作为普通用户连接。
角色设计的目的是为了权限管理,而不是作为一个连接账户。验证可以通过如下命令查看:
ALTER USER 'role_name'@'host' ACCOUNT UNLOCK;
这不会将角色转换为允许连接的帐户。

5. 请说明 FILEPROCESSRELOAD 这三个系统权限的作用?

FILEPROCESSRELOAD 三个系统权限的作用
FILE :允许用户执行文件相关的操作,如导入数据到表中( LOAD DATA INFILE )或从表导出数据到文件(SELECT INTO OUTFILE )。
PROCESS :允许用户查看所有线程的状态信息,而不仅仅是自己的(通过 SHOW PROCESSLIST 命令)。
RELOAD :允许用户执行刷新操作,如刷新日志、重新加载权限表、刷新表缓存等(通过 FLUSH 命令)。

6. 在授予权限时,WITH GRANT OPTION WITH ADMIN OPTION 子句会对被授予的权限有什么影响?

WITH GRANT OPTION WITH ADMIN OPTION 子句对被授予权限的影响
① WITH GRANT OPTION :允许被授予的用户将其拥有的权限进一步授予其他用户。这增加了权限管理的复杂性,因为授予权限的链条会延长。
② WITH ADMIN OPTION :在 MySQL 8.0 中用于角色管理,允许被授予的用户将角色授予其他用户。这也增加了权限链的复杂性。

7. 在权限管理中,不能将口令和对象直接关联,不能对表行进行授权,不能明确拒绝对特定对象比如表的访问。谈一下你对这三个判断的理解。

对以下权限管理判断的理解:
不能将口令和对象直接关联 MySQL 的权限系统基于用户和主机,而非口令和对象。
不能对表行进行授权 MySQL 的权限系统只能在表、列、视图等级别进行授权,而不能对单行数据进行授权。
不能明确拒绝对特定对象的访问 MySQL 权限系统采用“白名单”模式,只能通过授予权限来控制访问,而没有明确的“拒绝”规则来阻止对特定对象的访问。

8. 请说明授权表的内容和它的作用?

授权表的内容及其作用
授权表:授权表位于 mysql 数据库中,主要包括 user db tables_priv columns_priv 等表。这些表存储着关于用户权限的详细信息
作用:授权表控制着 MySQL 数据库中的用户权限,决定用户可以访问哪些资源、执行哪些操作。权限系统通过这些表来检查用户的操作权限。

9. 你是如何理解“最小权限原则”的?

对“最小权限原则”的理解
最小权限原则( Principle of Least Privilege, POLP )是安全管理中的一个重要概念,指的是用户或进程应仅被授予完成任务所需的最小权限
对于数据库管理,最小权限原则意味着为用户分配的权限应尽可能少,以减少安全风险。避免赋予过多权限可以降低因恶意操作或错误配置引发的安全问题。

http://www.ppmy.cn/embedded/101796.html

相关文章

【JS】localeCompare实现中文排序

如何对两个中文进行字典顺序排序&#xff0c;如’本’拼音首字母’b’&#xff0c;‘初’拼音首字母’c’&#xff0c;所以’本’<‘初’。 JS默认根据编码顺序排序 使用localeCompare即可&#xff0c;如 ‘本’ < ‘初’ 则返回负数 使用方法 referenceStr.localeComp…

在linux上如何发现跟文件系统中占用比较多空间的文件或者目录

在linux上 由于还存在其它的文件系统 所以如果我想发现那些文件或者目录占用比较大空间 想释放根文件系统的一些空间 不知道该使用什么命令来查找哪里占用了比较大的空间。 一种就是使用ncdu这个命令 这个命令需要单独安装 yum install ncdu [rootstbm000019-vm16 oracle]# …

Excel的使用总结3

1、选择一列数据&#xff0c;除了表头 点击表头下的第一个数据&#xff0c;点击快捷键CTRLSHIFT ↓ 2、如何将00001&#xff0c;这样的数据前面的0去掉&#xff08;前提是单元格格式已经是文本了&#xff09; 可以直接使用text公式

选择排序(直接选择排序和堆排序)

一、直接选择排序 1.基本思想 每一次从待排序的数据元素中选出最小&#xff08;或最大&#xff09;的一个元素&#xff0c;存放在序列的起始位置&#xff0c;直到全部待排序的数据元素排完。 2.动图展示 3.思路讲解 ①在元素集合array[i]—array[n-1]中选择关键码最大&…

【C语言】深入理解指针3(附转移表源码)

深入理解指针3 1.字符指针变量2.数组指针变量2.1是什么2.2应用 3.二维数组传参的本质4.函数指针变量4.1函数指针变量的创建和使用4.2 typedef关键字 5.函数指针数组6.转移表 1.字符指针变量 上⾯代码的意思是把⼀个常量字符串的⾸字符 h 的地址存放到指针变量 pstr 中。 《剑指…

闲鱼IP属地地址:去外地会自动变化吗?解析实时更新机制

在数字化时代&#xff0c;网络交易平台如闲鱼已成为我们日常生活中不可或缺的一部分。在进行二手交易时&#xff0c;了解对方的地理位置信息成为许多买家和卖家的关切点。那么&#xff0c;去外地闲鱼IP会变吗&#xff1f;闲鱼IP属地地址是实时更新吗&#xff1f;本文将深入探讨…

Git提交错误代码如何回退代码

1&#xff0c;找到需要回退的提交行&#xff0c;点击右键&#xff0c;点击重置当前分支到此次提交 2,选择强行合并 3&#xff0c;执行git pull -f 强行推送 4&#xff0c;如果当前账号没有开启本分支强推权限 需要去git开启 5&#xff0c;如果没有推送&#xff0c;处于待推…

Python爬虫—常用的网络爬虫工具推荐

以下列举几个常用的网络爬虫工具 1. 八爪鱼&#xff08;Bazhuayu&#xff09; 简介&#xff1a; 八爪鱼是一款面向非技术用户的桌面端爬虫软件&#xff0c;以其可视化操作和强大的模板库而受到青睐。它支持从各种网站上抓取数据&#xff0c;包括文本、图片、文档等&#xff…