标签 数据库 下的文章

记得在夏日博客之前的文章中,有关于 asp 的注入,当时研究 asp 的时候也是直接通过 sql 进行注入的,主要是因为 sql 语句写得不严谨,所以有了攻击机会,记得当时测试后台,直接 or 很简单的就登陆了,一点安全性都没有,后来慢慢的都做了安全,屏蔽了一些登陆字符,实际上测试 sql 注入除了手动来测试之外,互联网上还有大量的工具,比如明小子,sql 万能注入等等,而下面夏日博客要介绍的是关于 php 安全 sql 注入测试的研究,本来觉得 php 已经够安全的了,没想到 sql 注入在 php 下面同样存在,只不过有些安全设置可以在 php.ini 里面进行屏蔽掉。
如今,谈SQL注入漏洞是否已是明日黄花,国内大大小小的网站都已经补上漏洞。但,百密必有一疏,入侵是偶然的,但安全绝对不是必然的。

阅读全文



教程来自:
phpMyadmin新建MYSQL数据库,添加用户并配置用户权限(图片教程)
MySql管理工具phpMyadmin创建数据库和设置用户权限详细图文教程


phpMyAdmin是一款不错的管理mysql的web系统,利用phpMyAdmin创建数据库,创建用户,设置用户权限,备份数据,恢复数据都很方便。
在管理数据库方面,安全非常重要,最小的的权限,最大的安全。下面讲下如何通过phpMyAdmin来设置不同数据库的访问用户权限。
第一步:管理员权限账号登陆phpMyAdmin,一般用root登录
第二部:创建要设置权限的数据库(如果已经存在就不需要了)

填好数据库名称,点击创建,数据看就建好了(新版没有可选的数据库编码,一般可以选择的是“中文-Chinese simplified”编码)
第三步:创建管理用户

创建完数据库后,点击新数据库m69w.com,点击权限,出现一个新界面,再点击添加新用户,如上图

再次强调
在这一步时,要特别注意,全局权限不需要选择,千万不能给全局的任何权限了,那只是root该有的。
点执行即可然后直接点执行。
第四步:设置用户权限
在下图的权限设置中,我们把“数据”、“结构”两列的权限全部选中,管理权限都不要选。

选择相应的权限,点击执行

上面权限意思可以对照下面翻译:
数据:
SELECT:允许读取数据。
INSERT:允许插入和替换数据。
UPDATA:允许更改数据。
DELETE:允许删除数据。
FILE:允许从文件中导入数据以及将数据导出至文件。
结构:
CREATE:允许创建新数据库和表。
ALTER:允许修改现有表的结构。
INDEX:允许创建和删除索引。
DROP:允许删除数据库和表。
CREATE TEMPORARY TABLES:允许创建暂时表。
CREATE VIEW:允许创建新的意见。
SHOW VIEW:显示创建的看法。
CREATE ROUTINE:允许创建存储过程。
ALTER ROUTINE:允许改变和下降存储过程。
EXECUTE:允许许执行存储过程。
管理:
GRANT:允许添加用户和权限,而不允许重新载入权限表。
SUPER:允许在达到最大允许数目时仍进行连接。
PROCESS:允许查看进程列表中的完整查询。
RELOAD:允许重新载入服务器设置并刷新服务器的缓存。
SHUTDOWN:允许关闭服务器。
SHOW DATABASES:允许访问完整的数据库列表。
LOCK TABLES:允许锁住当前线索的表。
REFERENCES:在此版本的 MySQL 中无效。
REPLICATION CLIENT:用户有权询问附属者/控制者在哪里。
REPLICATION SLAVE:回复附属者所需。
CREATE USER:允许创建,下降和重新命名的用户帐户。

到这里,我们已经全部设置完毕了,创建了一个数据库:m69w.com,并创建了数据库用户m69w.com,
特别指定了该用户(m69w.com)只对m69w.com这个数据库的访问权限。
如此,便达到了我们一开始所讲的目的:为每一个数据库指定独立的用户访问权限。
我们可以看到,用户可以关了相应权限的数据库,而其他数据库都不可见
至此,数据库的创建和权限设置就完成了,最后我们可以用新用户登陆phpMyAdmin

MySQL忘记root用户密码或者root权限丢失解决