【发布时间】:2012-11-16 15:39:25
【问题描述】:
我正在使用 Microsoft SQL Server 2008 R2,并尝试通过 bcp(使用计划的作业)转储表。首先,我使用 xp_cmdshell 实现了它,但我听说,出于安全原因,应该避免这种情况。
所以我的问题是:sp_oaMethod 是什么?应该使用吗?如果不是,为什么不呢?您能否提出其他可能性?
【问题讨论】:
-
我最近在使用
sp_oa...和写入文件 (FSO) 时遇到了可靠性问题,并毫无问题地移至 xp_cmdshell。我一直没有找到原因。不是答案,但可以帮助您确定您是否在围栏上。 -
感谢您的回复......我不再被允许使用 xp_cmdshell - 这只是因为安全问题,而不是因为功能
-
当您可以使用 CLR 支持时,为什么还要使用 sp_OA% 过程?它好多了,会给你更多的灵活性。虽然如果你只是想运行 bcp.exe,那么你可以简单地将它放在一个批处理文件中并从 SQL 代理作业中调用它,甚至直接调用 bcp.exe。
-
xp_cmdshell 可以安全使用,但如果存在与该 ms-sql 帐户相关的 sql 注入风险,则应禁用它。根本不使用它并不能帮助保护系统,这很愚蠢。
标签: sql-server security xp-cmdshell