ASP.NET でレガシ暗号化モードを構成する方法

文書翻訳 文書翻訳
文書番号: 2425938 - 対象製品
すべて展開する | すべて折りたたむ

概要

マイクロソフト セキュリティ情報 MS10-070 に記載されているセキュリティ更新プログラムを適用すると、暗号化以外にも検証 (署名) を実行するように、ASP.NET で既定の暗号化メカニズムに変更が加えられます。この資料では、ASP.NET で暗号化を元の動作に戻す構成オプションについて説明します。

このセキュリティ更新プログラムの詳細については、以下の Web サイトを参照してください。
http://www.microsoft.com/japan/technet/security/bulletin/ms10-070.mspx

詳細

ASP.NET では、ユーザーは、MachineKey セクションにある構成を介して、オプションでデータを暗号化または検証することができます。セキュリティ更新プログラム MS10-070 で対処されるセキュリティ更新により、暗号化のみが要求されている場合であっても暗号化に加えて検証を実行するように、ASP.NET の暗号化の既定の動作が変更されます。

セキュリティ情報 MS10-070 に記載されているセキュリティ更新プログラムをインストールした後、ASP.NET に対して暗号化が設定されている場合、以下の操作が実行されます。
  • データの暗号化時に、暗号化されたデータに対して HMAC 署名が生成され、データに適用される。
  • データの復号化時に、データが復号化される前に HMAC 署名が検証される。
ASP.NET アプリケーションの設定 (appSettings) にある以下のキーが、暗号化に加えて署名の動作を制御します。
元に戻す全体を表示する
キー種類既定値キーをサポートする .NET のバージョン
aspnet:UseLegacyEncryptionブール値FalseMicrosoft .NET Framework 2.0 Service Pack 1
Microsoft .NET Framework 2.0 Service Pack 2
Microsoft .NET Framework 3.5
Microsoft .NET Framework 3.5 Service Pack 1
Microsoft .NET Framework 4.0
aspnet:UseLegacyMachineKeyEncryptionブール値FalseMicrosoft .NET Framework 4.0
aspnet:ScriptResourceAllowNonJsFilesブール値FalseMicrosoft .NET Framework 3.5 Service Pack 1
Microsoft .NET Framework 4.0

aspnet:UseLegacyEncryption appSetting について

ASP.NET 構成の machineKey セクションの検証セクションが、HMAC 署名を検証するようには構成されていない場合であっても、このアプリケーション設定は、暗号化で HMAC キーを使用して追加で検証を実行するかどうかを指定します。
元に戻す全体を表示する
aspnet:UseLegacyEncryption説明
False (既定値)この設定は、ASP.NET が暗号化を使用するように構成されている場合、ASP.NET で追加で HMAC 署名を検証するように構成します。machineKey の検証が HMAC キーを使用して署名するようには構成されていない場合であっても、このような動作になります。
Trueこの設定は、暗号化を使用するが、machineKey の検証を介して HMAC 署名を使用しないように ASP.NET が構成されている場合、ASP.NET で HMAC 署名を検証しないように構成します。

: この設定では、悪意のあるクライアントが、暗号化されたデータを復号化、偽造、またはその他の方法で改ざんできる可能性があります。

この設定を構成するには、コンピューターまたはアプリケーションの web.config ファイルで、以下の構成を追加します。
<configuration> ... <appSettings> ... <add key="aspnet:UseLegacyEncryption" value="false" /> </appSettings> </configuration>

aspnet:UseLegacyMachineKeyEncryption appSetting について

このアプリケーション設定は、指定されている MachineKeyProtection 引数で検証の実行を指定していない場合であっても、System.Web.Security.MachineKey クラスを介した暗号化で HMAC キーを使用して追加で検証を実行するかどうかを指定します。
元に戻す全体を表示する
aspnet:UseLegacyMachineKeyEncryption説明
False (既定値)この設定は、ASP.NET が暗号化を使用するように構成されている場合、ASP.NET で MachineKey クラスを介して追加で HMAC 署名を検証するように構成します。指定されている MachineKeyProtection 引数で検証の実行が指定されていない場合であっても、このような動作が行われます。
Trueこの設定は、ASP.NET で暗号化を使用するが、指定されている MachineKeyProtection 引数を介した HMAC 署名を使用しないように構成されている場合、ASP.NET で MachineKey クラスを介して HMAC 署名を検証しないように構成します。

: この設定では、悪意のあるクライアントが、暗号化されたデータを復号化、偽造、またはその他の方法で改ざんできる可能性があります。

この設定を構成するには、コンピューターまたはアプリケーションの web.config ファイルで、以下の構成を追加します。
<configuration> ... <appSettings> ... <add key="aspnet:UseLegacyMachineKeyEncryption" value="false" /> </appSettings> </configuration>

aspnet:ScriptResourceAllowNonJsFiles appSetting について

このアプリケーション設定は、ASP.NET の ScriptResource.axd ハンドラーが、JavaScript (.js 拡張子) ではないファイルにサービスを提供するかどうかを指定します。ScriptResource.axd は ASP.NET のハンドラーで、ASP.NET の Web ページの AJAX コンポーネントに JavaScript ソース ファイルを返します。
元に戻す全体を表示する
aspnet:ScriptResourceAllowNonJsFiles説明
False (既定値)この設定は、ScriptResource.axd ハンドラーを介して、拡張子が .js (JavaScript) である静的ファイルのみにサービスを提供するよう ASP.NET を構成します。
Trueこの設定は、ScriptResource.axd ハンドラーを介して、ASP.NET アプリケーションがアクセスできるすべての静的ファイルにサービスを提供するよう ASP.NET を構成します。

: この設定を使用すると、ハンドラーを介して、ASP.NET アプリケーション内のすべてのファイルにサービスを提供することができます。このようなファイルに機密データが含まれている場合、この設定を使用すると、クライアントに機密情報が漏えいする可能性があります。

この設定を構成するには、コンピューターまたはアプリケーションの web.config ファイルで、以下の構成を追加します。
<configuration> ... <appSettings> ... <add key="aspnet:ScriptResourceAllowNonJsFiles" value="false" /> </appSettings> </configuration>

関連情報

MachineKey セクションの詳細については、次のマイクロソフト Web サイトを参照してください。
http://msdn.microsoft.com/ja-jp/library/w8h3skw9.aspx
System.Web.Security.MachineKey クラスの詳細については、以下のマイクロソフト Web サイトを参照してください。
http://msdn.microsoft.com/ja-jp/library/system.web.security.machinekey.aspx
アプリケーション設定 (appSettings) の使用方法の関連情報を参照するには、以下のサポート技術情報番号をクリックしてください。
815786 Visual C# を使用して、アプリケーション構成ファイル内のカスタム情報を保存および取得する方法
313405 Visual Basic .NET または Visual Basic 2005 を使用して、アプリケーション構成ファイル内のカスタム情報を保存および取得する方法
ASP.NET の構成の関連情報を参照するには、以下のサポート技術情報番号をクリックしてください。
307626 INFO:ASP.NET の構成の概要

プロパティ

文書番号: 2425938 - 最終更新日: 2010年10月14日 - リビジョン: 1.0
この資料は以下の製品について記述したものです。
  • Microsoft .NET Framework 4.0
  • Microsoft .NET Framework 3.5 Service Pack 1
  • Microsoft .NET Framework 3.5
  • Microsoft .NET Framework 2.0 Service Pack 2
  • Microsoft .NET Framework 2.0 Service Pack 1 (x86)
キーワード:?
kbexpertiseinter kbhowto kbsecurity kbsurveynew KB2425938
"Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。"

フィードバック

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com