zoukankan      html  css  js  c++  java
  • mysql权限与安全

    一、MySQL权限系统通过两个阶段进行认证:

      (A) 对用户进行身份认证,IP地址和用户名联合,

      (B) 对合法用户赋予相应权限,权限表在数据库启动的时候载入内存中。

    二、在权限的存取过程中,会用到”mysql“数据库中的user、host和db这3个权限表。两阶段验证过程

      (A) user表中 host、user和password判断是否可连接。

      (B) 权限表顺序 user->db->tables_priv->columns_priv。

      user表中的每个权限都代表了对所有数据库都有的权限,db表中的每个权限都代表了对特定数据库才有的权限。

    三、账号管理

      创建账号的两种方式:使用GRANT语法创建或直接操作授权表,推荐第一种。

      修改权限可以使用 GRANT和REVOKE命令。

    四、安全问题

      (A) 严格控制操作系统帐号和权限

      (B) 尽量避免以root权限运行MySQL

      (C) 防止DNS欺骗

      (D) 删除匿名账户

      (E) 给root账号设置口令

      (F) 设置安全密码

      (G) 只授予账号必须的权限

      (H) 只让root拥有mysql库user表的存取权限

      (I) 只让 管理员拥有 FILE、PROCESS和SUPER权限

      (J) DROP TABLE 并不会回收以前的相关访问授权

      (K) 使用SSL

      (L) 给所有用户加IP限制

      (M) 注意REVOKE命令的漏洞

  • 相关阅读:
    jsp和servlet的联系与区别
    tomcat会如何处理请求
    java中synchronized的关键字
    mybatis的动态sql
    spring自带的json转换工具,支持@ResponseBody注解
    layer一个web弹窗/层解决方案
    spring mvc出现乱码的问题
    hdu1010 Tempter of the Bone
    hdu 3342 Legal or Not
    ThreadPoolExecutor线程池执行器源码解析
  • 原文地址:https://www.cnblogs.com/guigujun/p/6117126.html
Copyright © 2011-2022 走看看