我在我的應用程序中使用Windows身份驗證。我正在使用實體框架使用MVC3-Asp.Net。我有一個菜單列表,它們是按鈕。我使用站點地圖顯示他們。我可以使用Active目錄中可用的角色隱藏或顯示這些按鈕。我有兩個問題授權MVC3-ASP.NET
1)如果我以基本用戶身份登錄(某些按鈕對我來說不可見),這是我想要的,但如果我輸入控制器/操作(本頁應該不可見對我來說)在瀏覽器中加載。
解決方案:
我檢查用戶和其在操作第一線作用,如果我被授權看到這一點,那麼我顯示否則重定向到其他頁面。 從Active Directory驗證用戶需要時間。
2)如果我登錄爲基本用戶,並試圖看到一個行動被授權爲超級用戶仍然顯示(當我手動輸入控制器和動作名稱)
解決方案:
我正在檢查用戶及其角色作爲Action中的第一行,如果我被授權查看該內容,那麼我將顯示其他頁面重定向。 從Active Directory驗證用戶需要時間。
澄清:
我可以使用授權與角色屬性,我想這只是針對ASP.NET成員資格,因此不會似乎我的角色工作從Active Directory來了在系統。
問:
可以在任何一個點我的解決方案,其中不是檢查每個視圖的權限可我這樣做,在全球的。 asax文件。如果我在登錄時可以對用戶進行身份驗證,則無需爲其他視圖進行身份驗證。
下來的選民可以解釋爲什麼這是下來投票?謝謝 – Eranga 2011-06-01 13:30:32
我不知道,誰低估了這一點。 – 2011-06-01 13:38:03
我不是Session的大粉絲,它讓事情如此緩慢,有時無法預測行爲,謝謝你的回答。 – 2011-06-01 14:16:28