已经按下面连的处理,界面操作还是语句操,还是不成功,可以EXECUTE xp_sqlagent_proxy_account N'GET' 返回代理账号处理.
http://support.microsoft.com/kb/890775
有点区别的是,服务器没有加入域,EXECUTE xp_sqlagent_proxy_account 域名参数填写的是服务器计算机名称.
错误信息
由于 CreateProcessAsUserW 返回错误 1314,执行 xp_cmdshell 失败。
请确保运行 SQL Server 的服务帐户具有适当的特权。有关详细信息,
请在联机丛书中搜索与 xp_sqlagent_proxy_account
-------------------------
5 个解决方案
#1
执行xp_cmdshell相当于拥有服务器windows的操作权限(执行任何DOS命令),不建议开放喔,
可以把需要用到的功能封装为存储过程或CLR实现,然后授权给对应的用户即可.
可以把需要用到的功能封装为存储过程或CLR实现,然后授权给对应的用户即可.
#2
知道这个问题,所以不能给用户sa的权限,用户就是public角色成员,但个别的地方需用到复制文件,需要xp_cmdshell,
才用代理账号的方式处理,不想直接给用户加到sysadmin中.
#3
可以把需要用到的功能封装为存储过程,然后授权给对应的用户即可.
这样仅仅将指定的DOS命令(如copy)授权给用户使用比较安全.
比起让用户直接调用xp_cmdshell执行任何DOS命令安全喔.
例如,
这样仅仅将指定的DOS命令(如copy)授权给用户使用比较安全.
比起让用户直接调用xp_cmdshell执行任何DOS命令安全喔.
例如,
-- 复制文件
create proc dbo.sp_CopyFile
(@SourceFile varchar(100), -- 源文件
@TargetFile varchar(100) -- 目标文件
)
as
begin
set nocount on
exec xp_cmdshell 'copy '+@SourceFile+' '+@TargetFile+' /Y'
end
#4
放在存储过程中,用户一样也是要运行xp_cmdshell, 又回到那个用户账号的权限问题,如将用户账号加入sysadmin,就没有问题,
但sysadmin权限过大,目前用户是public角色,不能运行xp_cmdshell,sql帮助有提到可以用代理账号的方式,允许非sysadmin成员运行xp_cmdshell,现在就是配置了代理账号运行出错. 但查询配置信息又是成功的.
配置方式参考:http://support.microsoft.com/kb/890775
#5
你当前的用户,要有 sysadmin 的角色,不然没有权限执行这个存储过程的。
#1
执行xp_cmdshell相当于拥有服务器windows的操作权限(执行任何DOS命令),不建议开放喔,
可以把需要用到的功能封装为存储过程或CLR实现,然后授权给对应的用户即可.
可以把需要用到的功能封装为存储过程或CLR实现,然后授权给对应的用户即可.
#2
知道这个问题,所以不能给用户sa的权限,用户就是public角色成员,但个别的地方需用到复制文件,需要xp_cmdshell,
才用代理账号的方式处理,不想直接给用户加到sysadmin中.
#3
可以把需要用到的功能封装为存储过程,然后授权给对应的用户即可.
这样仅仅将指定的DOS命令(如copy)授权给用户使用比较安全.
比起让用户直接调用xp_cmdshell执行任何DOS命令安全喔.
例如,
这样仅仅将指定的DOS命令(如copy)授权给用户使用比较安全.
比起让用户直接调用xp_cmdshell执行任何DOS命令安全喔.
例如,
-- 复制文件
create proc dbo.sp_CopyFile
(@SourceFile varchar(100), -- 源文件
@TargetFile varchar(100) -- 目标文件
)
as
begin
set nocount on
exec xp_cmdshell 'copy '+@SourceFile+' '+@TargetFile+' /Y'
end
#4
放在存储过程中,用户一样也是要运行xp_cmdshell, 又回到那个用户账号的权限问题,如将用户账号加入sysadmin,就没有问题,
但sysadmin权限过大,目前用户是public角色,不能运行xp_cmdshell,sql帮助有提到可以用代理账号的方式,允许非sysadmin成员运行xp_cmdshell,现在就是配置了代理账号运行出错. 但查询配置信息又是成功的.
配置方式参考:http://support.microsoft.com/kb/890775
#5
你当前的用户,要有 sysadmin 的角色,不然没有权限执行这个存储过程的。