0

我們正在實施一個COTS包,允許您將文件從Thick-Client(通過HTTP Web服務)上載到SQL 2008,其中文件存儲在VarBinary(Max)中。該解決方案將在基於Microsoft的環境中運行。在通過HttpHandler或HttpModule上傳到SQL過程中病毒掃描文件是一個壞主意嗎?

我們有要求在上傳過程中「病毒掃描文件」。

我想知道是否將此作爲來自HttpHandler或HttpModule的API調用是一個壞主意或不是(甚至是可行的)。有沒有人做過這個?

+0

將文件存儲在文件系統上,只保留數據庫中的路徑更爲常見。這樣,AV將在複製到磁盤時立即掃描這些文件,並且如果AV檢測到任何線程,則可以阻止將它們的路徑存儲在數據庫中。 – Farzan

+0

@Farzan - COTS系統不以這種方式工作,所以只有讓他們修改系統的工作方式纔是選擇。 –

回答

1

這應該是可能的,支持批處理模式每一個殺毒軟件,這是一個例子,如何用Security Essentials的服務器上做:

Use Microsoft Security Essentials in C# when downloading email attachment

我對此的唯一要注意的是有隊列中的待處理文件和進程文件逐一排隊,以便在處理併發請求時不會運行更多的防病毒實例。這可能會減慢你的服務器。

+0

謝謝。我猜想這種方法隱藏了很多細節。問題:當你說一個隊列時你暗示了一個不同步的方法?理想情況下,我希望將此掃描插入現有流程,以便我們不影響COTS包當前的工作方式(授予掃描可能會使「上傳」時間更長)。 –

+0

按隊列排列我的意思是一個單獨的隊列,其中項目逐一掃描,以便兩次或多次掃描不會同時發生。 –