簡體   English   中英

.net Winforms應用程序的安全連接

[英]Secure connection of .net winforms application

我正在開發.net Winforms應用程序,並且需要保護與sql server 2008數據庫的連接。 我計划將Web服務創建為中間層,以處理身份驗證並提供數據處理。 有更好的方法嗎? .net是否具有用於該目的的組件或工具? 最好的技術是什么? 任何信息將不勝感激,謝謝。

定義“安全”。 顯然,您希望將訪問數據限制為確實需要該數據的用戶。 但是,需要有關該體系結構的更多信息。 這是一個內部應用程序,只能在(安全的)LAN,VPN或托管環境中使用嗎? 還是這是您無法控制的計算機上使用的應用程序,它將通過Internet傳輸數據? 您需要多少安全性取決於將使用哪種類型的用戶,從何處使用數據以及數據的敏感程度。

MSS內置了相當不錯的安全性。 您可以將SQL用戶綁定到Windows域帳戶,可以根據用戶或角色等以多種方式限制“安全性”(表,視圖,SP等)。我將首先研究這些功能,並認真考慮利用在您的安全計划中。 定義為供特定軟件的任何用戶使用的一個SQL用戶,該用戶具有執行該軟件可能需要執行的任何操作的權限,該用戶是簡單,通用且高度不安全的。

如果這還不夠好,或者您想完全抽象化數據層(例如,如果您需要該軟件能夠指向從MSS到Oracle到MySql的任何數據庫類型),那么對使用服務代理實現存儲庫模型。 像Brian一樣,我鼓勵您看看WCF。 WCF服務是高度可配置的,並且可以提供獨立的身份驗證和加密。 精心設計的WCF服務確實非常安全。

在服務后面,您可以實現存儲庫模式,該模式抽象了如何從數據存儲中檢索數據的詳細信息,並公開了簡單的方法,這些方法以現成的形式返回包含所需數據的對象。 現在,您的服務方法將只將1:1映射到Repository方法,並且可能需要轉換為DataContract可序列化的對象,而不是在服務的任何一側都可以使用更豐富的域模型。

您是否考慮過使用WCF構建服務層? WCF可以從實際的物理數據庫中引入全新的抽象層和安全性。

WCF還允許您使用內置日志記錄來使用比傳統Web服務所允許的更安全的綁定。

另外,如果您想在.NET Security上獲得不錯的閱讀,請隨時閱讀本書:

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM