sqlserver 下面执行dos 命令

- SYSTEM 帐户没有访问网络资源的能力,因此无法使用 NET USE 建立连接。
-- 针对 LZ 的问题,有一种方法是建立 XP_CMDSHELL 的代理帐户,通过代理帐户连接远程共享。
-- 非 SYSADMIN 服务器角色的登陆帐户都以代理帐户的身份运行 WINDOWS 程序,而 SYSADMIN 成员都以 SQL SERVER 服务帐户(SYSTEM)的身份运行程序。

-- 创建登陆帐户
USE MASTER
GO
CREATE LOGIN test WITH PASSWORD='123';
GO
-- 在 MASTER 数据库下创建用户帐户
CREATE USER test FROM LOGIN test;
GO
-- 授予该用户帐户执行 xp_cmdshell 的权限
GRANT execute on xp_cmdshell TO test;
GO

-- 访问共享
exec as login='test';
-- 也可以在系统上直接建立映射
exec xp_cmdshell 'net use z: \\11.168.255.12\i$ password /user:administrator';
-- 直接通过映射盘符访问
exec xp_cmdshell 'dir z:';
revert;

-- 清理
revoke execute on xp_cmdshell from [test];
go
drop user [test];
go
drop login [test];
go

-- 上面的语句适用于 SQL Server 2005
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值