首页 >> 读书频道 >> 电脑 >> SQL问题汇编(2)
 
· 为PB的TreeView
· 用变量替代表名,列名的S
· PB动态报表格式自由定义
· 在PowerBulide
· 关于在 win2000
· PB通过OLEObjec
· 哪一个SQL net-l
· PB中读取地磅BCD解码
· 如何在SQL数据库中得到
· 浅析PowerBuild
· SQL问题汇编(3)
· PB中的数据窗口自动刷新
 
· 拉封丹寓言
· 电视剧《刁蛮公主》下载和
· 美容养颜手册
· 加油金顺剧情分集介绍完整
· 红楼梦:120回全本[清
· 素质教育在美国
· 全唐诗卷四十六
· 韩剧《布拉格恋人》剧情介
· 夜航船[作者:明·张岱]
· 局外人[作者:韩·可爱淘
· 现场流行病学
· 源氏物语[日本:紫式部]
 
· (出租)中动商场部分及写
· (出租)中动动漫基地&#
· 喜剧学院
· 《善德女王》剧情介绍
· 魔女18号 剧情
· 丑女无敌剧情介绍
· 魔女幼熙剧情介绍
· 龙游天下剧情介绍
· 震撼世界的七日剧情介绍
· 静静的白桦林剧情介绍
· 心情日记—老公今天我想对
· 旗舰剧情介绍
欢迎来到月影社区!如果您觉得这里不错,请推荐给您的朋友们。月影社区:http://wf66.com/

SQL问题汇编(2)


查看有无更新版本

关键字:SQL 2006-9-21

 

我们还增加了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”存储过程。如果不启动应用程序角色,你就不能够访问任何应用程序角色所专有的数据。

SQL问题汇编(2)

[ 1 ]
SQL问题汇编(2) num

打印本页 关闭

关于我们版权声明本站导航友情连结作品演示 TOP↑