通行证: 用户 密码 网站建设  下载中心 社区论坛 信息公告 MY小屋
联系我们
设为首页
加入收藏

 

QQ,ASP,PHP,JSP,XML,SQL,.Net,编程 程序 网页图象 建站经验 私服
首页 | 新闻资讯 | 编程开发 | 网页设计 | 图形图象 | 网络媒体 | 网站模板 | 数 据 库 | 投稿
论坛 | 操作系统 | 系统优化 | 网络安全 | 黑客技术 | 硬件学堂 | 硬件报价 | 服 务 器 | 地图
专题 | 应用软件 | 聊天通讯 | Q Q 专栏 | 建站经验 | 在线工具 | 站长Club | 注 册 表 | 旧版
社会 | 游戏娱乐 | 设计欣赏 | 疑难解答 | 社区论坛 | 韩国素材 | 素材图库 | 广告服务 | 服务
当前位置:首页>>数 据 库>>MySQL>>正文 新版上线![旧版]
注:打开慢时请稍等

MySQL数据库中的安全解决方案

http://www.iyit.net  日期:2006-12-14 16:09:48  来源:  点击:
参加讨论

  ·Super

  这个权限允许用户终止任何查询(这些查询可能并不是这个用户执行的)。

  以上几种权限是非常危险的,在给用户授权限时要非常谨慎。
  MySQL中的SSL

  以上的帐户安全只是以普通的Socket进行数据传输的,这样非常不安全。因此,MySQL在4.1版以后提供了对SSL(Secure Scokets Layer)的支持。MySQL使用的是免费的OpenSSL库。

  由于MySQL的Linux版本一般都是随Linux本身一起发布,因此,它们默认时都不使用SSL进行传输数据。如果要打开SSL功能,需要对hava_openssl变量进行设置:

  MySQL的Windows版本已经将OpenSSL加入了。也面的命令是查看你的MySQL是否打开了SSL功能。

SHOW VARIABLES LIKE 'have_openssl';

+---------------+-------+

| Variable_name | Value |

+---------------+-------+

| have_openssl | NO |

+---------------+-------+

1 row in set (0.00 sec)

  如果返回的是NO,那么说明你需要将OpenSSL编译进自己的MySQL

  在有时你可能需要将用户名和密码进行加密传输。在这时可以使用下面GRANT命令:

GRANT ALL PRIVILEGES ON ssl_only_db.* to 'abc'@'%' IDENTIFIED BY "password!" REQUIRE SSL;

  还可以通过 REQUIRE x509 选项进行SSL传输:

GRANT ALL PRIVILEGES ON ssl_only_db.* to 'abc'@'%' IDENTIFIED BY "password!" REQUIRE x509;

  你还可以使用REQUIRE SUBJECT来指定一个特定的客户端证书来访问数据库。

GRANT ALL PRIVILEGES ON ssl_only_db.* to 'abc'@'%'
IDENTIFIED BY "password!"
REQUIRE SUBJECT "/C=US/ST=New York/L=Albany/O=Widgets Inc./CN=client-ray.
example.com/emailAddress=raymond@example.com";

  也许你并不关心使用的是什么客户许可,而仅仅关心的是你的证书。那么你可以使用REQUIRE ISSUER来实现:

GRANT ALL PRIVILEGES ON ssl_only_db.* to 'abc'@'%' IDENTIFIED BY "password!"
REQUIRE ISSUER "/C=US/ST=New+20York/L=Albany/O=Widgets Inc./CN=cacert.example.
com/emailAddress=admin@example.com";

  SSL还可以直接通过密码进行加密。可以使用REQUIRE CIPHER设置密码。

GRANT ALL PRIVILEGES ON ssl_only_db.* to 'abc'@'%' IDENTIFIED BY "password!"
REQUIRE CIPHER "EDH-RSA-DES-CBC3-SHA";

  上面使用了GRANT命令对用户权限进行设置。而这些信息都是保存在授权表中,这些表是安全系统的心脏。在这些表中保存了每一个用户和客户机所具有的权限。如果正确地操作这些表,将会对数据库的安全起到积极的作用,而如果使用不慎,将是非常危险的。

  下面让我们来看看MySQL中的最要的5个授权表。

  user

  用户表保存了用户的权限和被加密的密码。这个表负责确定哪些用户和客户机可以连接到服务器上。

  host

  这个表为每一个客户机分配权限,它并不考虑用户的权限。MySQL在确定是否接收还是拒绝一个连接时,首先考虑的是user表。而使用GRANT或REVOKE命令并不影响host表,我们可以通过手工方式修改这个表中的内容。

  db

  db表保存了数据库层的权限信息。

  tables_priv

  这个表存储了表的权限信息。

  columns_priv

  这个表保存了单独列的权限信息。通过这个表,可以将操作某一列的权限授予一个用户。

  哈希加密

  如果数据库保存了敏感的数据,如银行卡密码,客户信息等,你可能想将这些数据以加密的形式保存在数据库中。这样即使有人进入了你的数据库,并看到了这些数据,也很难获得其中的真实信息。

  在应用程序的大量信息中,也许你只想交很小的一部分进行加密,如用户的密码等。这些密码不应该以明文的形式保存,它们应该以加密的形式保存在数据库中。一般情况下,大多数系统,这其中包括MySQL本身都是使用哈希算法对敏感数据进行加密的。

本新闻共3页,当前在第2页  1  2  3  


编辑: [发送给好友] [打印本页] [关闭窗口] [返回顶部]
上一篇:你的MySQL安全了吗?加铸23道安全门
下一篇:没有了
转载请注明来源:www.iyit.net
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。

 相关文章
最新更新 热点排行 推荐新闻
MySQL数据库中的安全解决方案 
你的MySQL安全了吗?加铸23道安全门 
MS SQL可写脚本和编程的扩展SSIS包
MySQL将为数据库管理员减负 
Mysql开发中的外键与参照完整性 
MySQL数据库中的安全解决方案 
你的MySQL安全了吗?加铸23道安全门 
MS SQL可写脚本和编程的扩展SSIS包
MySQL将为数据库管理员减负 
Mysql开发中的外键与参照完整性 
在MySQL数据库增加新用户权限简介
web3.0概念!!什么是web3.0?web3.0是
黑客利用Word漏洞破坏电脑存储系统
baidu 李彦宏谈进军日本 不怕谷歌雅虎
流氓软件7939升级为病毒 随意改写首页
MySQL数据库中的安全解决方案 
你的MySQL安全了吗?加铸23道安全门 
MS SQL可写脚本和编程的扩展SSIS包
MySQL将为数据库管理员减负 
Mysql开发中的外键与参照完整性 
最新永久免费网游年列表,免费3d网游
永久免费网游《刀OL》11月3日开放新服
远程破解盗窃QQ密码的各种方法
Windows的右键菜单设置与应用技巧
windows下如何修改右键菜单
安装IE7.0密技 绕过WGA 完美轻松搞定
msn8.0下载、msn shell、msn8.0中文版
流氓软件清理助手下载
秘籍:右键菜单终极锤炼术
应用readyboost实测闪存是否能提高VIS
MySQL数据库中的安全解决方案 
你的MySQL安全了吗?加铸23道安全门 
在MySQL数据库增加新用户权限简介
在win2003下MySQL数据库每天自动备份
Win2000 Apache PHP MySQL 安装及安全
MySQL数据库中的安全解决方案 
你的MySQL安全了吗?加铸23道安全门 
在MySQL数据库增加新用户权限简介
黑客利用Word漏洞破坏电脑存储系统
流氓软件7939升级为病毒 随意改写首页
Vista可受多种病毒感染 微软否认该漏洞
前百度工程师出走后纷纷复制创业密码
07年安全方面你应该注意的10件事
sxs.exe病毒清理办法,手动清楚方法 ̄!
三种常见中文内码的转换方法!

设置首 页 - 版权声明 - 广告服务 - 关于我们 - 联系我们 - 友情连接
Copyrights © 2004-2006 iYiT.Net All Rights Reserved.
网站合作、广告联系QQ:147007642、466949678
易特网络技术 点击这里给我发消息