通过 xp_cmdshell 拒绝访问带参数的 SSIS

Access denied SSIS w/ Parameters via xp_cmdshell

我上下搜索了一个解决方案,但找不到任何有用的东西。我尝试过的所有方法似乎都不起作用。

我有两个数据库。我不能通过添加 table 或类似的东西来修改数据库 A。我无法启用跨数据库访问。我相信我不能使用 sp.Start_job 因为我需要传递参数。我能够启用 xp_cmdshell.

我的数据库定义:

Database A 
    - Order table 
Database B 
    - Email notification Table  

我需要做的事情:

Any time an order is entered into Database A, I need to enter a row into Database B with values of the order. So I need to have parameters

我试过的:

- xp_cmdshell @query='DTEXEC /f "\Server\Folder\SSIS Packages\Order confirmations\Order confirmations\Package.dtsx" /DECRYPT password'
   1. I get an error saying access denied.  I tried setting up sp_xp_cmdshell_proxy_account (##xp_cmdshell_proxy_account##) to an account that has access to the network drive where the file is stored, no luck.
   2. whoami.exe shows NT/Authority \System instead of my proxy account.
   3. GRANT EXECUTE on xp_cmdshell to [mydomain\myAccount] didnt have any affect.

Whoami Results

xp_cmdshell Results

有什么建议吗?如果我使用 SQL Server Agent 进行设置,该作业运行良好。最终我会从数据库 A table 上的触发器调用 xp_cmdshell 命令将数据输入数据库 B,然后在满足某些条件时使用 sp_send_dbmail 发送电子邮件。

我目前能找到的唯一方法(没有在 SQL 中重新构建权限并且网络是向 SQL 服务器授予 read/execute 权限。这不是我理想的解决方案,但它有效。

希望这对某人有所帮助