我正在研究名为“xp_cmdshell”的TSQL命令,用于监视对SLK(SharePoint学习工具包)数据库的更改,然后执行将触发我需要的某些事件的批处理或PowerShell脚本。 (直接修改SharePoint数据库是不好的做法,因此我将使用其API)
我一直在各种博客和MSDN上阅读这种方法存在一些安全问题。这些站点建议您限制安全性,以便命令只能由特定的用户角色执行。
使用“xp_cmdshell”时,您会推荐哪些其他提示/建议?
或者我应该采用另一种方式并创建一个脚本或控制台应用程序,不断检查是否已进行更改?
我正在使用SQL 2008运行Server 2008。
答案 0 :(得分:1)
为什么不使用C#创建CLR SP,并负责调用API以及其中的任何其他外部进程。这样更安全,更易于管理,因为您只需要授予对CLR SP的执行权限。