我需要類似功能的一些門戶網站,在請求中PARAM將indentify門戶網站建立一個網站。像這樣http:/域/控制器/行動/門戶
現在我的問題是,如果一個門戶網站不存在必須重定向到其他網站/頁面和用戶可以登錄到一個門戶網站,但如果用戶來到其他門戶網站時,用戶必須重定向到該門戶網站的登錄頁面。
我現在有一些工作,但我覺得在管道中必須有一箇中心位置來處理這個問題。我當前的解決方案使用自定義操作篩選器來檢查門戶參數,並查看門戶是否存在,並檢查用戶是否登錄該門戶(用戶登錄的門戶位於身份驗證cookie中)。我在application_postauthentication事件中創建自己的IIndentiy和IPrincipal。
我有2個問題,我目前的做法:
1:這不是真正的執行,我必須將屬性添加到所有控制器和/或行動。
2:對用戶進行身份驗證並不真正有效,我希望能夠正常工作。但爲此,當我創建我的IPrincipal/IIndenty時,我需要訪問路線的參數,我似乎無法找到正確的位置來執行此操作。
希望有人能給我一些指點, 理查德。
它的一個選項,這就是我現在正在做的。但我認爲它不是正確的方法,因爲它實際上是一個應用程序範圍廣泛的事物,而不是控制器級別的。換句話說,我認爲應用程序必須執行規則,如果門戶不存在重定向,甚至不打算嘗試去某個控制器。它應該更像是路由不存在,並且沒有去哪裏但重定向。對於用戶身份也是如此,如果他要去一個他沒有登錄的門戶,它不應該被授權給漏洞應用程序。 – Richard 2010-05-26 12:40:08