MYSQL教程:建立加密连接
2009-04-06 11:17:58 来源:WEB开发网NONE,默认值,表示不需加密连接。
ANY,表示需要加密连接,可以是任何一种加密连接。由GRANT的REQUIRE SSL子句设置。
X509,表示需要加密连接,并要求客户提供一份有效的X509证书。由GRANT的REQUIRE X509子句设置。
SPECIFIED,表示加密连接需满足一定要求,由REQUIRE子句的ISSUER,SUBJECT或CIPHER的值进行设置。只要ssl_type列的值为SPECIFIED,则MySQL会去检查ssl_cipher(加密算法)、x509_issuer(证书签发者)和x509_subject(证书主题)列的值。这几列的列类型是BLOB类型的。
user权限表里还有几列是设置帐户资源使用情况的,如果以下数据列中的数全为零,则表示没有限制:
max_connections,每小时可连接服务器的次数。
max_questions,每小时可发出查询命令数。
max_updates,每小时可以发出的数据修改类查询命令数。
设置权限表应注意的事项:
删除所有匿名用户。
查出所有没有口令用户,重新设置口令。可用以下命令查询空口令用户:
mysql> SELECT host,user FROM user WHERE password = '';
尽量不要在host中使用通配符。
最好不要用user权限表进行授权,因为该表的权限都是全局级的。
不要把mysql数据库的权限授予他人,因为该数据库包含权限表。
使用GRANT OPTION权限时不要滥用。
FILE权限可访问文件系统中的文件,所以授权时也要注意。一个具有FILE权限的用户执行以下语句就可查看服务器上全体可读的文件:
mysql> CREATE TABLE etc_passwd(pwd_entry TEXT);
mysql> LOAD DATA INFILE '/etc/passwd' INTO TABLE etc_passwd;
mysql> SELECT * FROM etc_passwd;
更多精彩
赞助商链接