2010-07-01 92 views
1

我正在查看我的安全模型,並想知道如何處理項目中的安全性(訪問控制)?.Net和安全

我對簡單的winapps或webapps不感興趣,但在n層應用程序中。你如何控制訪問?你是在每一層,還是在用戶/服務前端?你使用自制解決方案還是有任何標準方法?在這種情況下,您是否使用IPrincipal和IIdentity:如何?

很多的問題。回答那些適用於你的問題。所有的答案是最受歡迎的。

+1

您在這篇文章中發表了大量的文章。我可以建議你先做一些閱讀,然後再回答具體的問題嗎?你所問的就足以填滿一本書。 – slugster 2010-07-01 08:35:46

回答

2

你做的每一層,或僅在 用戶/服務前端

認證(AuthN)可以和/或授權(AuthZ的)應該做的「最近」的資源,意味着您必須在每個圖層上執行authN和authZ-這是與縱深防禦戰略內聯的。始終假定「調用者」已被盜用,因此您需要驗證和驗證調用者的身份。

您使用自制解決方案還是 有沒有標準方法?

它通常是按照標準的方法,除非你確信你的自產自銷解決方案的穩健性是一個好主意,同樣適用關於加密

您正在使用的IPrincipal和 的IIdentity,在這種情況下:怎麼樣?

如果它完全是Windows環境,是的,使用IPrincipal和IIdentity是有道理的。 「如何」方很棘手 - 只需看MSDN samples,你就可以擴展IPrincipal和IIdentity來實現你自己的authN和authZ以防非同類(非Windows)網絡。

祝你好運!

+0

有什麼標準的方法? – jgauffin 2010-07-11 11:31:16

+0

這取決於您嘗試控制訪問的資源類型。例如,如果您想要將最終用戶認證爲Web應用程序,則可以使用表單身份驗證。如果您正在對自動系統(如Web服務客戶端)進行身份驗證,則可以使用客戶端證書身份驗證。對於Intranet方案,您可以使用Windows身份驗證。 – gauravphoenix 2010-07-18 00:38:57

0

您可以從學習表單&開始ASP.net中的Windows身份驗證。一切如下。