3

現在、クラスターベースのシステム(Rackspaceクラウド)に.netWebアプリケーションがあります。Web構成で、次のマシンキーを設定しました。

<machineKey validationKey='DE0...etc' 
decryptionKey='A97...etc' 
validation='SHA1'/>

毎日、次のエラーがかなり発生していました。

ビューステートMACの検証に失敗しました。このアプリケーションがWebファームまたはクラスターによってホストされている場合は、構成で同じvalidationKeyと検証アルゴリズムが指定されていることを確認してください。AutoGenerateはクラスターでは使用できません。

私は少しグーグルをして、以下を追加しました。これにより、以前のすべてのエラーが停止しました。ただし、さまざまなハッキング攻撃への扉を開く可能性があります。

<pages enableViewStateMac="false">

しかし、私は今、次のエラーが発生することを発見しています

このページの状態情報は無効であり、破損している可能性があります。

私は、これら2種類のエラーの原因を突き止めようとしています。彼らはボットですか?彼らは本物のウェブユーザーですか?彼らはハッキング/マルウェアの試みですか?これは正常な発生であり、無視する必要があります...

誰かがこれに光を当てることができますか?

4

1 に答える 1

1

マルウェアやハッキングの試みではないと思います。サイトを閲覧しているときに、自分でそれらを目にすることがあります。

私が見た一般的な原因は、ユーザーがポストバックを開始する前にページの読み込みが完了していないことです-フォームの下部に表示される非表示のフィールドがあり、それがブラウザに表示されていない場合はユーザーがボタンをクリックすると、サーバーはビューステートを拒否します。

この問題に関する非常に詳細な投稿と、いくつかの回避策がここにあります。

ビューステートMACの検証に失敗しましたエラー

于 2009-10-15T10:14:18.523 に答える