開箱即用MVC3應用程序允許使用Intranet項目模板時的Windows身份驗證或Internet項目模板的表單身份驗證。我有一個我想使用的網站。另外,我有一個現有的網站,它使用自己的自定義類型的認證來驗證用戶(沒有授權或角色,只是標識)。除了遺留系統的數據以進行身份驗證之外,我可能還需要使用每個功能。由於這個原因,我試圖確定一種方法來抽象我的身份驗證並將其解耦。我想使用某種依賴注入,完全基於配置,所以我可以在兩個不同的位置部署相同的站點,並通過僅更改配置來切換身份驗證模型(Windows身份驗證/表單身份驗證/自定義身份驗證)。MVC3鬆耦合認證
目前,我所使用的所有ASP.NET應用程序(包括MVC3模板項目)似乎都與所使用的身份驗證類型緊密耦合。
我在這個盒子外面想的太過分了嗎?
這是可能的,還是有這種緊密耦合的原因?
UPDATE 真正的問題我已經是現有的傳統認證,我需要使用一些用戶,對窗體身份驗證,我需要爲他人之間。 Windows與表單身份驗證不是真正的問題,因爲LogIn表單沒有用於其中一個。但請考慮自定義身份驗證和表單身份驗證。 LogIn表單與FormsAuthentication,更具體地說是System.Web.Security緊密結合。 (即Membership.ValidateUser,FormsAuthentication.SetAuthCookie等)。
我想注入到我的AccountController中使用的身份驗證,而不是使用FormsAuthentication和Membership。
到目前爲止,這是否更有意義我的問題是什麼?
當網站在本地使用時,我會進行Windows身份驗證,但這些用戶在不在網絡上時可能需要訪問網站。在這種情況下,他們需要使用表單身份驗證登錄。然而,客戶需要登錄,但會使用預先存在的身份驗證系統,該系統不使用aspnet形式驗證表,視圖等。 – 2012-01-09 15:38:55