-
您的位置:首页 → 精文荟萃 → 软件资讯 → SQL问题汇编(2)
SQL问题汇编(2)
时间:2004/10/7 19:03:00来源:本站整理作者:蓝点我要评论(0)
-
还有其它值得提到的新特性吗?
我们还增加了DENY语句,可以被管理员用来禁止某个用户对一个对象的所有访问权限。在SQL
Server 6.5中你可以在一行上运行两次REVOKE语句来在某种程度上仿效DENY语句。
在SQL Server 7.0中,如果你想阻止某人查看某一个表,你可以使用DENY来禁止他的SELECT权限。使用DENY语句时应当非常小心。举个例子:假如你在AUTHORS表上有SELECT和INSERT的权限,而且作为某个NT组的成员,你还拥有UPDATE权限。然而,你所在的另一个NT组被DENY语句禁止了INSERT和UPDATE权限。结果是,你只有SELECT权限了。DENY语句会禁止对数据库对象的访问,因此你要确保没有对PUBLIC组使用DENY语句,因为任何用户都总是PUBLIC组中的成员。许多没有经验的管理员这样做了,然后他们只好打电话来向我们求助。
DENY不仅可以用于数据库对象,它还可以用于登录名。例如,你授予了NT组“domain
users”登录到SQL Server的权限。Joe刚刚被解雇了但是他还不知道。你不能简单地使用REVOKE语句来取消Joe的登录权限,因为他没有被单独授予登录权限,而是和其他成员一起作为“domain
users”组中的一个成员被一起授予登录权限。这时你就可以特别地对Joe使用DENY语句。这样他不能登录到SQL
Server了,而同一个组的其他成员仍然可以。
应用程序角色是如何工作的?
可能解释应用程序角色的最好方式是在实际情况中说明。比方说你想做一个职工工资单的应用程序,可以允许用户更新工资。当然你不希望允许用户简单地登录到SQL
Server中然后更改工资。如果雇员能够那样做的话,他就可能试图去更改他自己的工资了。更合适的方法是使用一个工资单应用程序,它能够执行特定的安全检查,例如,不允许用户更新他们自己的工资。
它是这样工作的。你的工资单应用程序以使用者的安全级别登录到SQL
Server,以便服务器审计追踪工具能够知道到底是谁在登录到SQL Server。然后你的应用程序切换到适当的数据库并调用系统存储过程“sp_setapprole”来启动应用程序角色。应用程序角色是受密码保护的,所以你需要把密码作为参数传递给sp_setapprole。当数据在网上传输时,你也可以对密码进行加密。
一旦启动了应用程序角色,用户现有的权限被关闭,应用程序角色的安全权限被相应打开。你的应用程序现在就可以使用应用程序角色来执行修改数据库的操作了。
需要注意的一个问题是,应用程序角色是特定于连接的。假如你同时打开了两个到SQL
Server的连接,你必须保证每个连接的应用程序角色都被打开了。使用应用程序角色时,一旦打开连接并转换到适当的数据库后,第一件事情就是调用“sp_setapprole”存储过程。如果不启动应用程序角色,你就不能够访问任何应用程序角色所专有的数据。
相关阅读
Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么
-
热门文章
360快剪辑怎么使用 36金山词霸如何屏幕取词百度收购PPS已敲定!3
最新文章
微信3.6.0测试版更新了微信支付漏洞会造成哪
360快剪辑怎么使用 360快剪辑软件使用方法介酷骑单车是什么 酷骑单车有什么用Apple pay与支付宝有什么区别 Apple pay与贝贝特卖是正品吗 贝贝特卖网可靠吗
人气排行
xp系统停止服务怎么办?xp系统升级win7系统方电脑闹钟怎么设置 win7电脑闹钟怎么设置office2013安装教程图解:手把手教你安装与qq影音闪退怎么办 QQ影音闪退解决方法VeryCD镜像网站逐个数,电驴资料库全集同步推是什么?同步推使用方法介绍QQ2012什么时候出 最新版下载EDiary——一款好用的电子日记本
查看所有0条评论>>