切换SQL Server 2005中执行SQL的用户
来源:互联网 发布:javascript 替换 编辑:程序博客网 时间:2024/06/16 02:08
切换SQL Server 2005中执行SQL的用户
很多人都碰到过这样的问题,使用查询分析器执行SQL语句时,如果这时想切换用户该怎么
办?SQL SERVER2005给了我们这样的功能。
SQL Server 2005包含了EXECUTE AS语句,通过使用EXECUTE AS语句,您可以为批处理和过
程切换用户,这样,调用该批处理或过程的用户就可以使用不同的权限来操作了。
用户的切换
在SQL Server 2000中,您可以使用SETUSER命令来模拟SQL用户的切换,但问题在于,只有
系统管理员或者数据库的所有者才能使用这个命令,而且Windows账户也不能使用该命令。
在SQL Server 2005中,EXECUTE AS语句可以替代SETUSER来改变存储过程、触发器、批处
理或者函数的执行用户。如果用户变成了另外一个用户,那么SQL Server将检查该用户的权限
。如果您需要在创建或修改一个存储过程或函数的时候指定EXECUTE AS语句,您需要具备
IMPERSONATE的权限,以及创建该对象的权限。
如果我们想切换回原来的用户,只需要使用 REVERT命令即可。
一个具体的例子。
我用windows用户权限链接到SQL Server2005,然后打开查询分析器
查看这个时候的用户,使用如下SQL
SELECT SESSION_USER
GO
------------------------
dbo
然后,我切换用户
execute as user='test4'
go
------------------------
test4
从这里发现,用户已经被切换到了test4
然后,我再用Revert切换回原来的用户
revert
go
SELECT SESSION_USER
GO
------------------------
dbo
发现用户再次被切换回来了
- 切换SQL Server 2005中执行SQL的用户
- SQL Server 中显示执行sql的时间
- SQL Server中执行sql文件
- SQL SERVER中动态执行SQL
- sql server 中sql语句执行顺序
- sql server 中sql语句执行顺序
- SQL server 2005 切换分区表
- SQL server 2005 切换分区表
- SQL Server 2005 Sa 用户的启用
- SQL Server 2005 Sa 用户的启用
- SQL SERVER 2005 中sa用户登录和新建用户
- SQL SERVER 2005 中sa用户登录和新建用户
- SQL Server 2005 获取最新执行的SQL语句
- Sql Server的执行计划
- SQL SERVER 关于用户的sql语句
- SQL Server 2005 定时执行SQL语句
- SQL Server 2005 新建用户
- SQL server中SELECT语句的执行顺序
- SQL Server查询过程的内存实际消耗
- 条款25:考虑写出一个不抛异常的swap函数
- 获取本目录下的文件名
- 教你轻松掌握SQL Server中Case的不同用法
- 输入输出流(一)
- 切换SQL Server 2005中执行SQL的用户
- 一次WEB服务器渗透测试笔记
- url编码问题
- Myeclipse 高亮显示使用的变量
- Flex与.NET互操作(十五):使用FluorineFx中的字节数组(ByteArray)实现图片上传
- SQL Server2000升级到2005的注意事项
- 映射Hibernate对象标识符
- javascript与dom编程(一)
- Windows蓝屏代码含意速查表