您目前已離線,請等候您的網際網路重新連線

PRB: 行動表單驗證和不同 Web 應用程式

重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。

按一下這裡查看此文章的英文版本:310415
本文已封存。本文係以「現狀」提供且不會再更新。
徵狀
當您使用 [行動表單驗證的要求是不重新導向至 loginUrl 屬性中指定的頁面。
發生的原因
在 ASP.NET 表單驗證平台建置驗證行動表單。當多個 Web 應用程式具有相同的 Cookie 名稱索引鍵,使用行動表單驗證時,有安全性問題和 (或) Cookie 路徑。在這種情況很可能在某一應用程式中進行驗證,而到其他的應用程式提出要求,而不被重新導向至登入頁面進行驗證。但是,授權規則仍然適用,這表示即使第二個應用程式 (甚至不過使用者一樣不明確登入) 上驗證使用者,使用者可能仍然會被拒絕存取資源因為設定。
解決方案
如果要解決這個問題,使用下列方法之一:

方法 1

name 屬性的 <form>提供不同的值 Web.config 檔中的項目的:

在應用程式 1 Web.config:

<forms name=".ASPXAUTH" loginUrl="login.aspx" protection="All" >				
在應用程式 2 中的 Web.config:
<forms name=".ASPXAUTH2" loginUrl="login.aspx" protection="All" >				

方法 2

path 屬性的 <form>提供不同的值 Web.config 檔中的項目的:

在應用程式 1 Web.config:

<forms name=".ASPXAUTH" loginUrl="login.aspx" protection="All" path="/app1" >				
在應用程式 2 中的 Web.config:
<forms name=".ASPXAUTH" loginUrl="login.aspx" protection="All" path="/app2">				

方法 3

設定不同的金鑰,每個應用程式。新增一個 <machinekey> Web.config 的項目檔案,和設定值:
<machineKey validationKey="<validationKey>" decryptionKey="<decryptionKey>" validation="SHA1" />				
注意: 請參閱 < 其他相關資訊 > 一節,來產生有效的驗證和解密金鑰內發行項。
狀況說明
這種行為是經過設計規劃的。
其他相關資訊
如需詳細資訊按一下面的文件編號,檢視 「 Microsoft 知識庫 」 中 「 文件:
312906如何: 使用 Visual C#.NET 以用於表單驗證建立機碼
313091如何: 使用 Visual Basic.NET 以用於表單驗證建立機碼
313116PRB: 表單驗證要求會不導向至 loginUrl 頁面

警告:本文為自動翻譯

內容

文章識別碼:310415 - 最後檢閱時間:10/24/2013 08:04:49 - 修訂: 1.0

Microsoft Mobile Internet Toolkit 1.0

  • kbnosurvey kbarchive kbmt kbconfig kbcookie kbnofix kbprb kbsectools kbsecurity kbweb KB310415 KbMtzh
意見反應