埃爾汗 -
您的主要安全目標是不是爲了保護你的源代碼,這是要保護客戶的數據。爲此,您必須確保A)您的通信是安全的(SSL)b)您的代碼實現了適當的安全性(不受SQL注入攻擊)以及c)您的數據庫是安全的。 (A) - 通信安全 - 您需要從(這是我們使用的人,我喜歡他們)之類的人那裏獲得SSL證書。當您在服務器上安裝Cert時,您需要確保網站只接受安全(SSL)連接 - 至少對於所有包含敏感數據的頁面。例如,所有帶有信用卡數據的表格都必須通過SSL提交。
對於(B) - 代碼安全性 - 這是值得整個book的!你必須不,例如,僅通過附加從網頁收集表格/請求數據構造SQL調用(這讓你開到SQL Injection攻擊)。 全部 SQL參數必須參數化。等等。沒有人可以在SO帖子中解釋安全性 - 您有lot要學習。
對於(C) - SQL Server安全 - 這也是一個複雜的話題,但有幾個關鍵點。根據您的描述,我假設SQL Server與您的Web應用程序在同一臺服務器上運行。這意味着你做不是希望它接受任何連接從網絡。不要試圖將其打開,以便您可以從桌面上的SQL Management Studio輕鬆訪問它......這只是可怕的愚蠢的安全實踐。登錄到遠程服務器後,您可以通過遠程桌面訪問它。此外,禁用'sa'帳戶 - 現在就做。人們在1433端口找到你(如果你不禁止所有的網絡訪問)將會每隔一分鐘每秒鐘對sa賬戶進行強力密碼猜測,等等。我們每天在非網站數據庫上獲得約17,000個數據庫,我們爲少數客戶維護。這裏還有更多需要學習的東西,但如果你採取這兩個步驟,你就可以很好地覆蓋。儘管如此,我建議您也運行MS安全表面分析工具,並在適當的地方遵循其建議,以降低SQL Server的可見性。
至於虛擬機託管,它應該罰款。然而,專用主機只需要每月大約199美元的MaximumASP(我使用,推薦和認爲是業內最好的!)。我建議您考慮使用您自己的專用服務器,以便您可以輕鬆擴展您的業務,如果它證明是成功的。
對於你的數據庫時,SQL Server Express將用於這方面的工作,是的,你可以升級到工作組版的未來。數據庫限制不會爲您的網站造成瓶頸,除非您實際達到這些限制。你需要弄清楚這是否可能。話雖如此,是不是建議嘗試運行免費版本的MS數據庫上的專業網站 - 尤其是一個持有財務數據。隨着任何成功,你是可能會轟炸到這些限制。許多網絡託管公司(特別是MaximumASP)可讓您以最低的價格(例如每月25美元或類似的價格)爲您的服務器的價格添加專業版的SQL Server。
最後,你似乎是有點困惑的Web應用程序與應用程序的Windows。在Web應用程序中,您的用戶將無法訪問您的源代碼/ DLL(IIS阻止訪問各種文件,包括dll和.config文件)。他們不下載和安裝應用程序,因此您不需要簽署代碼,也不需要混淆。在這種情況下,「反射鏡保護」對我來說甚至都沒有意義。
如果你擔心你的託管公司看到你的代碼,你應該找到一個不同的託管公司。話雖如此,我無法想象任何有信譽的託管公司真的關心您的源代碼。
祝你好運!
這是VPS不是VDS請編輯... – 2009-01-17 14:18:57
不......他的確是指虛擬專用服務器,據我所知。 – Kev 2009-01-17 14:38:20
是的,我的意思是虛擬專用服務器。 – Erhan 2009-01-17 19:52:00