当前位置:七道奇文章资讯数据防范MySQL防范
日期:2011-01-25 22:43:00  来源:本站整理

MySQL数据库安全办理筹划[MySQL防范]

赞助商链接



  本文“MySQL数据库安全办理筹划[MySQL防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

  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

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

  

上一页  [1] [2] [3]  下一页


  以上是“MySQL数据库安全办理筹划[MySQL防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • Windows 搭配 IIS7 PHP MySQL 环境
  • mysql Out of memory (Needed 16777224 bytes)的错误办理
  • mysql提醒[Warning] Invalid (old?) table or database name问题的办理办法
  • mysql启用skip-name-resolve情势时呈现Warning的处理办法
  • mysql启用skip-name-resolve情势时呈现Warning的处理办法
  • MySQL Order By语法介绍
  • <b>MySQL ORDER BY 的实现解析</b>
  • mysql数据库插入速度和读取速度的调整记录
  • MySQL Order By索引优化办法
  • MySQL Order By用法分享
  • mysql #1062 –Duplicate entry ''1'' for key ''PRIMARY''
  • MySQL Order By Rand()效率解析
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .