NTFS
权限设置:在文件夹、文件上右击,选“属性”,然后找
“安全”选项卡,你就看到文中所说的那些权限设置的位置。
2。如果你使用的是
Windows
XP,则有可能你的“安全”选项卡是隐藏的,在“控制
面板”中找到“文件夹选项”,单击“查看”选项卡,在下面的列表中找到“使用简
单共享(推荐)”这个选项,去掉此项前面的勾,然后重新打开文件夹、文件的“属
性”就可以看到“安全”选项卡了。
3。
ASP还是
ASP.NET?。
ASP
中执行
Access
*** 作的帐户是
IUSR_(你的机器名)
(“Internet
来宾帐户”)
在
ASP.NET
中默认是以一个叫做
ASPNET
的,你可以在“控制面板”-“管理工具”-“计算机管理”-“本地用户和组”-“用
户”中看到这个用户,默认情况下是:
全名:ASP.NET
计算机帐户
描述为:用于运行
ASP.NET
辅助进程(aspnet_wp.exe)的帐户。
隶属于:Users组。
使用这么一个隶属于
Users
组的用户来进行文件 *** 作、数据库 *** 作的风险是要比
用一个
Administrators
组的用户的风险要小得多,这也是
ASP.NET
在安全方面的
一个考虑吧。
既然是这么一个用户需要访问、 *** 作数据库文件本身,那么我们就需要给它一定
的
NTFS
权限以允许它的访问。显然没有
NTFS
的权限许可,ASPNET
就无法访问、
*** 作数据库,就会出现上面实验中所看到的那些错误了。
建议通过phpMyAdmin
来设置数据库用户的权限。phpMyAdmin 是一个以PHP为基础,以Web-Base方式架构在网站主机上的MySQL的数据库管理工具,让管理者可用Web接口管理MySQL数据库。
一、首先您需要在服务器上安装配置
phpMyAdmin。
安装比较复杂,详见http://faq.comsenz.com/viewnews-484
二、创建用户(如之前已经创建好用户,可以省略这一步)
点击“添加新用户”这个连接,添加一个新的数据库用户名;
三、权限设置
编辑刚刚创建的用户的权限(如下图所示)
四、重新加载授权表
修改完用户权限以后需要回到
phpMyAdmin
的首页,重新加载一下授权(如下图)即可。
背景
在了解动态权限之前,我们先回顾下 MySQL 的权限列表。
权限列表大体分为服务级别和表级别,列级别以及大而广的角色(也是MySQL 8.0 新增)存储程序等权限。我们看到有一个特殊的 SUPER 权限,可以做好多个 *** 作。比如 SET 变量,在从机重新指定相关主机信息以及清理二进制日志等。那这里可以看到,SUPER 有点太过强大,导致了仅仅想实现子权限变得十分困难,比如用户只能 SET 变量,其他的都不想要。那么 MySQL 8.0 之前没法实现,权限的细分不够明确,容易让非法用户钻空子。
那么 MySQL 8.0 把权限细分为静态权限和动态权限,下面我画了两张详细的区分图,图 1 为静态权限,图 2 为动态权限。
图 1- MySQL 静态权限的权限管理图
图 2-动态权限图
那我们看到其实动态权限就是对 SUPER 权限的细分。 SUPER 权限在未来将会被废弃掉。
我们来看个简单的例子,
比如, 用户 'ytt2@localhost', 有 SUPER 权限。
mysql>show grants for ytt2@'localhost'+---------------------------------------------------------------------------------+| Grants for ytt2@localhost |+---------------------------------------------------------------------------------+| GRANT INSERT, UPDATE, DELETE, CREATE, ALTER, SUPER ON *.* TO ytt2@localhost |+---------------------------------------------------------------------------------+1 row in set (0.00 sec)
但是现在我只想这个用户有 SUPER 的子集,设置变量的权限。那么单独给这个用户赋予两个能设置系统变量的动态权限,完了把 SUPER 给拿掉。
mysql>grant session_variables_admin,system_variables_admin on *.* to ytt2@'localhost'Query OK, 0 rows affected (0.03 sec)mysql>revoke super on *.* from ytt2@'localhost'Query OK, 0 rows affected, 1 warning (0.02 sec)
我们看到这个 WARNINGS 提示 SUPER 已经废弃了。
mysql>show warnings
+---------+------+----------------------------------------------+
| Level | Code | Message |
+---------+------+----------------------------------------------+
| Warning | 1287 | The SUPER privilege identifier is deprecated |
+---------+------+----------------------------------------------+
1 row in set (0.00 sec)`
mysql>show grants for ytt2@'localhost'
+-----------------------------------------------------------------------------------+
| Grants for ytt2@localhost |
+-----------------------------------------------------------------------------------+
| GRANT INSERT, UPDATE, DELETE, CREATE, ALTER ON *.* TO ytt2@localhost |
| GRANT SESSION_VARIABLES_ADMIN,SYSTEM_VARIABLES_ADMIN ON *.* TO ytt2@localhost |
+-----------------------------------------------------------------------------------+
2 rows in set (0.00 sec)
当然图 2 上还有其它的动态权限,这里就不做特别说明了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)