热门文章 | 热门软件| 热门源码 | 热门电影 | 知识库 | 联系我们
软件 源码 教程 影视 健康 招聘
  HTML | JavaScript | ASP | PHP | JSP | NET | VB | VC | VF | Windows | Linux | Mysql | Mssql | Oracle | Struts 
当前位置: 创世纪计算机资源网 -> 文章频道 ->mysql 
站内搜索:
MySQL安全性指南(3)
作者:woshisadan 来源:赛迪网技术社区 整理日期:2007-4-10

    数据目录内容的属主和模式为mysqladm设置。现在你应该保证你总是以mysqladm用户运行服务器,因为现在这是唯一由访问数据库目录权限的用户(除root)。

在完成这些设置后,你最终应该得到下面的数据目录权限:

% ls -l 
total 10148 
drwxrwx---  11  mysqladm mysqlgrp 1024 May  8 12:20 . 
drwxr-xr-x  22  root     wheel     512 May  8 13:31 .. 
drwx------   2  mysqladm mysqlgrp  512 Apr 16 15:57 menagerie 
drwx------   2  mysqladm mysqlgrp  512 Jan 25 20:40 mysql
drwx------   7  mysqladm mysqlgrp  512 Aug 31  1998 sql-bench 
drwx------   2  mysqladm mysqlgrp 1536 May  6 06:11 test 
drwx------   2  mysqladm mysqlgrp 1024 May  8 18:43 tmp 
....

二、外部安全性-保证网络访问的安全

MySQL的安全系统是很灵活的,它允许你以多种不同方式设置用户权限。一般地,你可使用标准的SQL语句GRANT和REVOKE语句做,他们为你修改控制客户访问的授权表,然而,你可能由一个不支持这些语句的老版本的MySQL(在3.22.11之前这些语句不起作用),或者你发觉用户权限看起来不是以你想要的方式工作。对于这种情况,了解MySQL授权表的结构和服务器如何利用它们决定访问权限是有帮助的,这样的了解允许你通过直接修改授权表增加、删除或修改用户权限,它也允许你在检查这些表时诊断权限问题。

关于如何管理用户账号,见《MySQL的用户管理》。而对GRANT和REVOKE语句详细描述,见《MySQL参考手册》。

2.1 MySQL授权表的结构和内容

通过网络连接服务器的客户对MySQL数据库的访问由授权表内容来控制。这些表位于mysql数据库中,并在第一次安装MySQL的过程中初始化(运行mysql_install_db脚本)。授权表共有5个表:user、db、host、tables_priv和columns_priv。

表1 user、db和host授权表结构

访问范围列

user db host 
Host Host Host 
User Db Db 
Password User

数据库/表权限列

Alter_priv Alter_priv Alter_priv 
Create_priv Create_priv Create_priv 
Delete_priv Delete_priv Delete_priv 
Drop_priv Drop_priv Drop_priv 
Index_priv Index_priv Index_priv 
Insert_priv Insert_priv Insert_priv 
References_priv References_priv References_priv 
Select_priv Select_priv Select_priv 
Update_priv Update_priv Update_priv 
File_priv Grant_priv Grant_priv 
Grant_priv    
Process_priv    
Reload_priv    
Shutdown_priv

表2 tables_priv和columns_priv属权表结构

访问范围列

tables_priv  columns_priv 
Host  Host 
Db  Db 
User  User 
Table_name  Table_name 
Column_name

权限列

Table_priv  Column_priv

[1]  [2]  [3]  [4]  
相关文章