2011-02-25 54 views
0

我正在構建Intranet網站。而且我仍然不確定如何實施網站的安全。我正在使用ASP.NET MVC 3.如何處理Web應用程序中的身份驗證/授權

公司中的任何人都可以訪問該網站。這是一個識別系統,您可以提名員工獲得獎勵。目前我沒有使用任何類型的身份驗證。我有一個角色表,其中包含角色和一個關聯表,指定哪個用戶包含哪些角色,這些角色主要是管理員角色。如果用戶屬於這些角色,那麼他/她仍然可以訪問網站的各個部分。

我需要使用內置的成員資格嗎?或者我需要爲此創建一個自定義成員資格?我們不使用登錄頁面。如果用戶沒有角色訪問視圖,則他/她被重定向到另一個頁面。

我們使用IIS進行身份驗證。這與Windows身份驗證相同嗎?我有用於授權的角色表。

我現在只是有點困惑,我希望有人能給我更多的清晰。

+1

我不知道如何說您使用IIS來執行身份驗證但不知道它是如何做到的?在使用Windows身份驗證時,並假設所有用戶和Web服務器都位於同一個域(或受信任的域)上,則用戶無需專門登錄到Web站點(因爲他們已登錄到他們的機器和瀏覽器將與服務器協商身份驗證過程在ASP.NET應用程序中,您可以使用頁面的「用戶」屬性訪問當前正在執行請求的用戶(及其組)。 – 2011-02-25 10:58:21

回答

1

可以很好地使用ASP.Net MembershipProviderRoleProvider這個

有關如何使用他們,你應該看看Videos at asp.net教程。

這裏是在MSDN

+0

如果我不使用登錄頁面,則實現此功能嗎?不需要登錄頁面 – 2011-02-25 11:04:46

+0

您有樣本代碼? – 2011-02-25 11:06:06

1

步行通過本博客文章由Scott Guthrie的可能幫助:

Recipe: Enabling Windows Authentication within an Intranet ASP.NET Web application

對於內網Web應用程序,使用最常見的驗證場景被稱爲Windows驗證。 Windows身份驗證避免了在應用程序內創建登錄表單的需要,並且不需要最終用戶手動輸入用戶名/密碼憑證以登錄到應用程序。相反,ASP.NET和IIS可以自動檢索並驗證以安全方式訪問網站的最終用戶的Windows用戶名

+0

這是一個對所有人開放的網站,只有部分視圖無法被所有人訪問,爲此用戶必須有角色表中的角色,那麼我將如何將它與角色表一起使用,而不是像下面這樣:If User.IsInRole(「DOMAIN \ managers」)Then ..? – 2011-02-28 12:21:21

相關問題