はじめに
この記事で説明されている修正プログラムでは、Microsoft .NET Framework 3.5 Service Pack 1 (SP1) の SecurityBindingElement クラスに AllowInsecureTransport プロパティが追加されています。 このプロパティの既定値は False に設定されています。 このプロパティを true に設定すると、混合モードのセキュリティで保護されたメッセージは、HTTP などの Windows Communication Foundation (WCF) サービスのセキュリティで保護されていないトランスポートを介して送信される可能性があります。 このプロパティを True に設定するのは、クライアントとサービスが信頼された環境にある場合のみです。
解決策
サポートされている修正プログラムが Microsoft から提供されています。 ただし、この記事で説明されている問題のみを修正することを目的としています。 この特定の問題が発生しているシステムにのみ適用してください。 この修正プログラムは、追加のテストを受ける可能性があります。 したがって、この問題による深刻な影響がない場合は、この修正プログラムを含む次の Service Pack を待つことをお勧めします。
この問題を直ちに解決するには、Microsoft Customer Support Services に連絡して修正プログラムを入手してください。 Microsoft Customer Support Services の電話番号一覧およびサポート料金については、次のマイクロソフト Web サイトを参照してください。
http://support.microsoft.com/contactus/?ws=support注: Microsoft サポート担当者が、特定の更新プログラムを適用することにより問題が解決されると判断した場合、まれに通常サポート依頼にかかる料金が免除されることがあります。 ただし、特定の更新プログラムの対象とならない追加の質問および問題については、通常のサポート料金が適用されます。
この修正プログラムを MSDN コード ギャラリーからダウンロードするには、次のマイクロソフト Web サイトを参照してください。
http://code.msdn.microsoft.com/KB971831
注: 修正プログラムを使用できる言語は MSDN コード ギャラリーに表示されます。 目的の言語が一覧に表示されない場合は、コード ギャラリー リソース ページでその言語を使用できないためです。
注: または、この修正プログラムのロールアップを次の Microsoft Connect Web サイトからダウンロードすることもできます。
http://connect.microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=21953
前提条件
この修正プログラムを適用するには、.NET Framework 3.5 Service Pack 1 (SP1) がインストールされている必要があります。
再起動の必要性
使用中の .NET Framework インスタンスがない場合は、この修正プログラムを適用した後にコンピューターを再起動する必要はありません。
修正プログラムの置き換えに関する情報
この修正プログラムを適用しても、他の修正プログラムは置き換えられません。
ファイル情報
修正プログラム (英語版) のファイル属性は次表のとおりです。ただし、これより新しい修正プログラムがリリースされている可能性もあります。 これらのファイルの日付と時刻は世界協定時 (UTC) で記載されています。 ファイル情報に表示される時刻は、ローカル時刻に変換されています。 UTC とローカル時刻との時差を確認するには、[コントロール パネル] の [日付と時刻] の [タイム ゾーン] タブを使用してください。
Windows Vista SP2 および Windows Server 2008 SP2 (x86 ベース) バージョン:
| ファイル名 | ファイルのバージョン | ファイル サイズ | 日付 | 時刻 | プラットフォーム |
|---|---|---|---|---|---|
| Servicemonikersupport.dll | 3.0.4506.4135 | 17,240 | 2009 年 6 月 25 日 | 06:57 | x86 |
| System.runtime.serialization.dll | 3.0.4506.4135 | 970,752 | 2009 年 6 月 25 日 | 06:57 | x86 |
| System.servicemodel.dll | 3.0.4506.4135 | 5,935,104 | 2009 年 6 月 25 日 | 06:57 | x86 |
Windows Vista SP2 および Windows Server 2008 SP2 (x64 ベース) バージョン:
| ファイル名 | ファイルのバージョン | ファイル サイズ | 日付 | 時刻 | プラットフォーム |
|---|---|---|---|---|---|
| Servicemonikersupport.dll | 3.0.4506.4135 | 19,288 | 2009 年 6 月 25 日 | 06:57 | x64 |
| System.runtime.serialization.dll | 3.0.4506.4135 | 847,872 | 2009 年 6 月 25 日 | 06:57 | x64 |
| System.servicemodel.dll | 3.0.4506.4135 | 5,271,552 | 2009 年 6 月 25 日 | 06:57 | x64 |
Windows Server 2008 SP2 (Itanium ベース)
| ファイル名 | ファイルのバージョン | ファイル サイズ | 日付 | 時刻 | プラットフォーム |
|---|---|---|---|---|---|
| Servicemonikersupport.dll | 3.0.4506.4135 | 33,640 | 2009 年 6 月 25 日 | 06:58 | IA-64 |
| System.runtime.serialization.dll | 3.0.4506.4135 | 847,872 | 2009 年 6 月 25 日 | 06:58 | IA-64 |
| System.servicemodel.dll | 3.0.4506.4135 | 5,271,552 | 2009 年 6 月 25 日 | 06:58 | IA-64 |
状態
Microsoft は、これが "適用対象" セクションに記載されている Microsoft 製品の問題であることを確認しました。
追加情報
WCF では、トランスポート セキュリティ、メッセージ セキュリティ、Mixed-Mode セキュリティの 3 種類のセキュリティ モードがサポートされています。
- トランスポート セキュリティは、メッセージ層の下のトランスポート バイト ストリームで適用されます。 このメッセージにはセキュリティ ヘッダーがなく、メッセージにはユーザー認証データは含まれていません。 WS-Security の使用法の点で柔軟性が最も低く、輸送に大きく依存します。 性能面では最速だ。
- メッセージ セキュリティはメッセージ層で適用され、トランスポートに依存しません。 これは、さまざまなトランスポート経由でメッセージをルーティングするという点で最大限の柔軟性を備えたポイントツーポイントのセキュリティモデルです。 WS-Security では、メッセージを保護するさまざまな方法と、使用できるトークンを定義しています。 Message Security は、その点でも最大限の柔軟性を提供します。 メッセージ・セキュリティーは、パフォーマンスの点で最も遅いです。
- Mixed-Mode セキュリティは、トランスポートとメッセージセキュリティのハイブリッドです。 トランスポートは暗号化され、メッセージにはいくつかのユーザー認証トークンが含まれています。 トークンがキーを提供できる場合は、セキュリティ ヘッダーのタイムスタンプに署名します。 クライアント トークンが非対称トークンの場合は、'To' ヘッダーも署名されます。 これは、メッセージ セキュリティよりも高速です。
.NET Framework 4.0 の SecurityMessageProperty.OutgoingSupportingTokens プロパティの詳細については、次のマイクロソフト Web サイトを参照してください。