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命令的漏洞

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏阿炬.NET

SQL Server2000导出数据时包含主键、字段默认值、描述等信息

34111
来自专栏数据库

Oracle 数据库常用操作语句大全

一、Oracle数据库操作 1、创建数据库 create database databasename 2、删除数据库 drop database dbname ...

16810
来自专栏Java技术分享

MYSQL定位慢查询

在web开发中,我们经常会写出一些SQL语句,一条糟糕的SQL语句可能让你的整个程序都非常慢,超过10秒一般用户就会选择关闭网页。

52715
来自专栏java相关

CentOS7使用dnf安装mysql

1245
来自专栏linux运维学习

linux学习第五十篇:MySQL创建用户以及授权,常用sql语句,MySQL数据库备份恢复

MySQL创建用户以及授权 给用户user1授权,指定IP:127.0.0.1,只有在这个IP下才能登陆,密码为11111,*.*是可以访问所有mysql文件,...

17210
来自专栏https://www.cnblogs.com/L

Mysql篇--Linux中安装Mysql

由于Windows安装Mysql非常麻烦,所以分享一篇Linux中对MySQL的搭建,废话不多说,来,come on.

1312
来自专栏深度学习之tensorflow实战篇

SQL中distinct的用法

在表中,可能会包含重复值。这并不成问题,不过,有时您也许希望仅仅列出不同(distinct)的值。关键词 distinct用于返回唯一不同的值。 表A: ? 表...

2863
来自专栏性能与架构

SQL与MongoDB的对应关系图表

关系数据库有一套标准的SQL语句来操作数据库,MongoDB是文档型数据库,概念与操作方式与SQL都不相同,下面的几张表全面的表达了SQL与MongoDB的对应...

3556
来自专栏Java架构师历程

MySQL 谈谈Memory存储引擎

memory存储引擎是MySQL中的一类特殊的存储引擎。其使用存储在内存中的内容来创建表,而且所有数据也放在内存中。这些特性都与InnoDB,MyISAM存储引...

1532
来自专栏xiaoheike

linux 创建sudo账号.md

root ALL=(ALL) ALL 在该行下面添加: username ALL=(ALL) ALL

751

扫码关注云+社区