24

machineKeyASP.NETの構成セクションはどこにありますか?

私のアプリケーションにはありません。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

4

1 に答える 1

35

machineKeySystem.webのエントリーの下にありますweb.config

web.config スキーマについては、MSDN リンクを参照してください。

web.config に表示されない場合は、そこに追加できます。

再びMSDNから:-)

改ざん防止の ViewState を提供するために、ViewState のコンテンツからハッシュ メッセージ認証コード (HMAC) が生成され、後続の要求でハッシュが比較されます。の検証属性は、使用するハッシュ アルゴリズムを示します。デフォルトは、HMACSHA1 アルゴリズムを使用する SHA1 です。ハッシュの有効な選択肢には SHA1 または MD5 がありますが、より大きなハッシュを生成し、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]
/>
于 2010-09-21T10:53:46.377 に答える