這源於earlier SO question。在SQL Server中使用xp_cmdshell通常是不好的做法嗎?
如果您不得不在文件系統上執行操作,通常最好是編寫一個應用程序來處理這些操作並從該應用程序調用SQL Server?在什麼情況下使用xp_cmdshell是個好主意?
這源於earlier SO question。在SQL Server中使用xp_cmdshell通常是不好的做法嗎?
如果您不得不在文件系統上執行操作,通常最好是編寫一個應用程序來處理這些操作並從該應用程序調用SQL Server?在什麼情況下使用xp_cmdshell是個好主意?
這只是另一個使用的工具。與所有工具一樣,在適合時使用它。有些人可能會以某種方式持有非常強烈的意見,但在一天結束時,它就在那裏。
SQL Server 2005引入了sp_xp_cmdshell_proxy_account,它在某種程度上緩解了特權問題,所以它變得更有用。考慮粉末關鍵問題:允許人們攜帶槍支(槍支是相關的危險是否危險)通常是不好的? 提示參數...
在處理無法訪問其源代碼的第三方應用程序時,SQL Server可能是唯一或至少最方便的地方,用於將需要訪問的邏輯文件系統。創建另一個應用程序只是一個需要擔心的事情。
安全性確實成爲問題。額外的權限可以提供給用戶。 http://msdn.microsoft.com/en-us/library/ms175046.aspx
如果函數存在安全問題,尤其是在早期版本的SQL Server中。恕我直言,最糟糕的一個方面就是一些管理員傾向於授予足夠的權利去做所有事情。例如。如果要運行xp_cmdshell並訪問網絡,請使用appX等來授予SQL Server Domain Admin所有者的權限,我們將永遠不必重新訪問用戶權限。 – Karl 2011-02-02 23:32:31