ASP.NETのmachineKey
configセクションはどこにありますか?
アプリケーションWeb.config
にはありません。ルートWeb.config
にはありません。また、machine.config
にもありません。
これは、ASP.NETにハードコードされた他のデフォルトがあることを意味しますか?その場合、デフォルトは何ですか?(.NET 2および4の場合)
これを読んだこと: http://msdn.Microsoft.com/en-us/library/w8h3skw9.aspx
私はどこかでこのようなものを見つけることを期待していました:
<machineKey
validationKey="AutoGenerate,IsolateApps"
decryptionKey="AutoGenerate,IsolateApps"
/>
編集:1.1のドキュメントはデフォルト値に関してかなり明確に見えます: http://msdn.Microsoft.com/en-us/library/ w8h3skw9(VS.71).aspx ただし、4つのドキュメントはかなりあいまいです http://msdn.Microsoft.com/en-us/library/w8h3skw9.aspx
machineKey
はSystem.web
のweb.config
エントリの下にあります
Web.configスキーマについては MSDNリンク を参照してください。
Web.configに表示されない場合は、そこに追加するだけです。
から [〜#〜] msdn [〜#〜] 再び:-)
改ざん防止のViewStateを提供するために、ハッシュされたメッセージ認証コード(HMAC)がViewStateコンテンツから生成され、そのハッシュが後続のリクエストで比較されます。 の検証属性は、使用するハッシュアルゴリズムを示し、デフォルトはHMACSHA1アルゴリズムを使用するSHA1です。ハッシュの有効な選択肢には、SHA1またはMD5があります。ただし、SHA1の方がハッシュが大きく、MD5よりも暗号学的に強力であると考えられているため、SHA1が望ましいです。のvalidationKey属性は、ViewStateコンテンツと組み合わせて使用され、HMACを生成します。アプリケーションがWebファームにインストールされている場合、validationKeyをAutoGenerate、IsolateAppsから手動で生成された特定のキー値に変更する必要があります。
<pages>
および<machineKey>
要素のデフォルト設定は、マシンレベルのweb.config.commentsファイルで定義されています。
MachineKeyの場合、
<machineKey validationKey="AutoGenerate,IsolateApps"
decryptionKey="AutoGenerate,IsolateApps"
validation="SHA1" decryption="Auto" />
編集:.NET 4.0の場合、デフォルトのアルゴリズムは 変更 からSHA256になっています。デフォルトを見つける最も簡単な方法は、この構成値のMSDNのエントリを確認します。
MachinekeyのMSDN 4.0は次のとおりです。選択した値はデフォルト値です。 []の値は、フィールドが取り得る他のオプションの値です。これは、MSDNで構成値のデフォルトを表す一般的な方法です。
<machineKey
validationKey="AutoGenerate,IsolateApps" [String]
decryptionKey="AutoGenerate,IsolateApps" [String]
validation="HMACSHA256" [SHA1 | MD5 | 3DES | AES | HMACSHA256 |
HMACSHA384 | HMACSHA512 | alg:algorithm_name]
decryption="Auto" [Auto | DES | 3DES | AES | alg:algorithm_name]
/>