所以我正在閱讀有關登錄循環的另一個問題,當您有用戶登錄時,設置爲返回到他們在登錄後可能無法訪問的URL(即管理頁面,並且用戶使用正常登錄帳戶)。ASP.Net MVC如何確定用戶是否可以訪問URL?
WebForms下的解決方案似乎是利用UrlAuthorizationModule.CheckUrlAccessForPrincipal
方法。但是,這對於轉到使用授權屬性保護的操作方法的URL不起作用。我想我可以計算出URL指向哪種方法並反映出來解決我的問題 - 但我似乎無法弄清楚如何從路由表中獲取這些信息。
任何人都曾與此合作過,或有解決方案嗎?如果我可以從URL中獲取路由信息,我認爲我可以將其餘的工作,但如果任何人有一個通用的解決方案 - 即。一些隱藏的方法類似於之前提到的用於MVC的方法,那麼這也是完全可怕的。
我不是問如何檢查用戶是否有權訪問指定的控制器/操作對。我首先需要弄清楚如何從基於URL的RouteTable獲取Controller/Action對。所有背景故事的原因是,如果MVC確實存在相當於UrlAuthorizationModule.CheckUrlAccessForPrincipal
的情況。
我現在會接受,因爲它現在似乎是最好的解決方案。我不確定我會實際使用這個。我真的很喜歡不必將這種邏輯嵌入到控制器中的想法 - 我也想避免額外的重定向。 – kastermester 2010-02-11 01:07:11