MySql有一个先进但非标准的安全/权限系统。本节描述它的工作原理。
6.1权限系统做什么
MySql权限系统的主要功能是证实连接到一台给定主机的一个用户,并且赋予该用户在一个数据库上select、insert、update和delete的权限。
附加的功能包括有一个匿名的用户和对于MySql特定的功能例如LOADDATAINFILE 进行授权及管理操作的能力。
6.2MySql用户名和口令
由MySql使用用户名和口令的方法与Unix或Windows使用的方式有很多不同之处:
- MySQL使用于认证目的的用户名,与Unix用户名(登录名字)或Windows用户名无关。缺省地,大多数MySQL客户尝试使用当前Unix用户名作为MySQL用户名登录,但是这仅仅为了方便。客户程序允许用
-u 或--user 选项指定一个不同的名字,这意味着无论如何你不能使得一个数据库更安全,除非所有的MySQL用户名都有口令。任何人可以试图用任何名字连接服务器,而且如果他们指定了没有口令的任何名字,他们将成功。
- MySQL用户名最长可以是16各字符;典型地,Unix用户名限制为8个字符。
- MySQL口令与Unix口令没关系。在你使用登录到一台Unix机器口令和你使用在那台机器上存取一个数据库的口令之间没有必要有关联。
- MySQL加密口令使用了一个Unix登录期间所用的不同算法,见7.4.12杂项函数一节中描述
PASSWORD() 和ENCRYPT() 函数部分。
(编辑:aniston)
|