注册
 找回密码
 注册
江西广告网
查看: 365|回复: 0
打印 上一主题 下一主题

sql利用sp_helprotect在数据库中鉴别许可

[复制链接]

该用户从未签到

1
跳转到指定楼层
发表于 2009-1-18 17:16:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
  系统的存储进程 sp_helprotect, 在当前的SQL Server服务器中鉴别许可. 系统进程接受四个可选参数:      @name: 这个是数据库对象名. 这个参数的值可能可能是一个语句许可。   @username: 这个是数据库中用户的账号.这个可能是标准的SQL Server登陆或者一个Windows用户或者组登陆,它们都是数据库用户账号。   @grantorname: 这个是已经授予数据库对象许可的数据库用户账号名。   @permissionarea: 这个参数可能返回o或者s,也有可能两个一起返回。      @name参数的有效语句可能是下面的其中一个:      CREATE DATABASE   CREATE DEFAULT   CREATE FUNCTION   CREATE PROCEDURE   CREATE RULE   CREATE TABLE   CREATE VIEW   BACKUP DATABASE   BACKUP LOG   如果没有参数被使用,sp_helprotect将返回所有被授予的许可或者拒绝所有的对象和语句许可。为了从这个进程获得输出更好的可读性,你需要以各自的形式来查看结果。      下面的脚本将展示sp_helprotect如何使用并在 Northwind 数据库中运行:      USE Northwind   GO   EXEC sp_helprotect @name = 'Orders'   GO   EXEC sp_helprotect @permissionarea = 's'   GO   EXEC sp_helprotect @permissionarea = 'o'   GO   EXEC sp_helprotect @permissionarea = 's o'   GO      首个sp_helprotect语句将会返回Orders表格的许可。其他三个系统存储进程语句将返回基于 @permissionarea参数的结果。       <
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表