2012-01-25 13 views
8

Windows 7 64ビットの開発ボックスでVisual Studio 2010 SP1を使用しています。私のasp.netは正常に動作しますが、Visual Studio Development Serverを使用して切り替えると、この行の "System.Web.HttpException:Unable to valid data"(Application.AuthenticateRequestイベントのglobal.asax .cs):VS Development Serverでは、System.Web.HttpException:データを検証できませんでした。ただし、IISではありません。

FormsAuthenticationTicket authTicket = FormsAuthentication.Decrypt(authCookie.Value); 

内部Webサーバーを使用すると、なぜこれが失敗しますか?

答えて

16

サーバーの切り替え後にCookieを削除してみてください。どちらのサーバーも独自の構成を持ち、フォーム認証Cookieが暗号化され復号化されるのはおそらく独自のdecryption keyです。したがって、IISで暗号化されたCookieがまだ残っている場合は、組み込みの開発サーバーを使用してサイトにアクセスするようにプロジェクトを切り替え、そのサーバーはCookieを復号化できません。あなたのweb.configファイル内の復号鍵を置けば

あなたはこの問題を防ぐことができます。このエラーの別の原因がある

<machineKey decryptionKey="..." /> 
+0

私は同様の問題を抱えています - 親切に助けてくださいhttp://stackoverflow.com/questions/34653227/how-to-decrypt-the-cookie-inside-custom-url-rewrite-provider – codetoshare

0

。 Web.configファイル内のMachineKeyエントリの末尾が

xmlns="" 

の場合は、このエラーが発生します。

0

@Michiel van Oosterhoutの方法を使用しましたが、動作しませんでした。しかし、私は次のように追加しました:

<authentication mode="Forms"> 
    <forms protection="Encryption" enableCrossAppRedirects="true"/> 
</authentication> 

これで機能します。

関連する問題