Microsoft .NET トランスポート構成を手動で作成して、Windows Communication Foundation (WCF) プロトコルを使用するサービス要求のトランスポート設定を記述できます。
始める前に
SOAP セキュリティーを使用している場合は、正しいライブラリーおよび構成ファイルを備えた環境が構成されていることを確認してください。
Microsoft クライアント・プロキシーで必要とされる証明書およびライブラリー (Microsoft .NET ライブラリーなど) がコンピューターにインストールされている必要があります。
WCF サービスの変更済みバージョンの Microsoft クライアント・プロキシー構成ファイル (デフォルトは client.exe.config) を Microsoft .NET トランスポート構成にリンクしてください。このファイルを soaclient.exe.config に名前変更して、以下の手順で説明されているとおりに編集する必要があります。
ヒント: Microsoft .NET WSDL ファイルをインポートすることで、Microsoft .NET トランスポート構成を自動的に作成できます。この場合でも、以下の手順で説明されているとおり、変更された
soaclient.exe.config ファイルを指すように、Microsoft .NET トランスポート構成を手動で編集する必要があります。詳しくは、『
WSDL ファイルによるサービス要求の送信』を参照してください。
このタスクについて
この製品は、以下のバインディングを使用する WCF サービスのテストをサポートします。
- BasicHttpBinding
- WsHttpBinding
- NetMsMqBinding (片方向呼び出しの場合のみ)
- WSFederationHttpBinding
- WS2007FederationHttpBinding
- NetTcpBinding
- チャネル、メッセージの直列化、トランスポート、およびセキュリティーのカスタム拡張機能を統合しないカスタム・バインディング
注: 以下の WCF サービスはサポートされていません。
- トランザクションと範囲
- 二重モード要求 (Microsoft Message Queuing (MS-MQ) トランスポートに基づくコールバックや両方向サービスなど)
IBM Appscan で Generic Service Client を使用して WCF アプリケーションをテストするには、WCF 構成ファイルに以下のコードを追加します。
<system.diagnostics> <trace autoflush="true" />
<sources> <source name="System.Net"
maxdatasize="1048576"><listeners><add
name="System.Net"/></listeners></source> <source
name="System.Net.Cache"><listeners><add
name="System.Net"/></listeners></source> <source
name="System.Net.Http"><listeners><add name="System.Net
"/></listeners></source> <source
name="System.Net.Sockets"><listeners><add
name="System.Net"/></listeners></source> <source
name="System.Net.WebSockets"><listeners><add
name="System.Net"/></listeners></source> </sources>
<sharedListeners> <add
name="System.Net"
type="IBM.ServiceModel.Soa.Extension.tools.TrafficTraceListener,
Soa-Behavior-Library"
initializeData="" />
</sharedListeners> <switches> <add name="System.Net"
value="All"/> <add name="System.Net.Cache"
value="All"/> <add name="System.Net.Http"
value="All"/> <add name="System.Net.Sockets"
value="All"/> <add name="System.Net.WebSockets"
value="All"/> </switches></system.diagnostics>
IBM Appscan が予期するのは WCF に基づく HTTP 要求のみです。以下の HTTP バインディングがサポートされています。
- BasicHttpBinding
- 標準の httpTransport を超えた Custombinding
- WsHttpBinding
- WsFederationHttpBinding
- WS2007FederationHttpBinding
また、以下のパターンがサポートされています。
- アクションの値 ( 必須 )
- 応答アクションの値 ( 必須 )
- 保護レベル
手順
- 以下のステップを実行して、変更した soaclient.exe.config ファイルを作成します。
- Microsoft .NET プロジェクトの client.exe.config (または proxy_client_name.config) ファイルのコピーを作成して、そのコピーを soaclient.exe.config に名前変更します。
- 以下の行で指定されているとおり、この製品がサポートしている Microsoft .NET のバージョンを使用するように soaclient.exe.config ファイルを編集します。
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
- 以下の行で指定されているとおり、構成ファイルのエンドポイントがこの製品のお客様の契約を指すように soaclient.exe.config ファイルを編集します。
contract="IBM.ServiceModel.Soa.Extension.Stub.IStubTest"
- 変更した soaclient.exe.config ファイルをワークスペースにインポートします。
soaclient.exe.config ファイルを作成すると、以下のステップをスキップして WSDL ファイルをインポートし、WSDL で指定されている情報に基づいて Microsoft .NET トランスポート構成を自動的に作成できます。詳しくは、『WSDL ファイルによるサービス要求の送信』を参照してください。
- 「Generic Service Client」ツールバー・ボタン (
) をクリックして Generic Service Client を開き、「トランスポート」タブをクリックします。
- 「トランスポート構成」ページで、「Microsoft .NET 構成の作成 (Create a Microsoft .NET configuration)」をクリックします。
- 新しいトランスポート構成の名前を入力して以下のオプションを指定します。
- soaclient.exe.config の場所
- soaclient.exe.config ファイルの場所を指定します。このファイルは手動で作成する必要があります。Microsoft .NET サービスから client.exe.config ファイルをコピーし、それを編集してください。
- ユーザー認証
- サービスに認証が必要な場合には、「ユーザー認証」を選択して、そのサービスにアクセスするためのユーザー名とパスワードを入力します。
- エンドポイント保護
- デフォルトでは、トランスポート構成は、soaclient.exe.config ファイルに記述されているエンドポイント保護レベルを使用します。以下に示す別の「保護レベル」を指定する場合は、この設定を使用します。
- シグニチャー: 要求のデジタル署名を行う場合は、このオプションを選択します。
- 「暗号化およびシグニチャー」: 要求のデジタル署名および暗号化を行う場合は、このオプションを選択します。
- 拡張プロパティー
- WSDL ファイル内のメソッドの順番どおりに要求アクションおよび応答アクションをリストするには、このテーブルを使用します。「追加」をクリックして、サービスで必要な要求アクションおよび応答アクションの名前と値を指定します。このテーブルの生成は、Microsoft .NET WSDL ファイルをインポートすると自動的に行われます。
- 「OK」をクリックしてトランスポート構成を作成します。
次のタスク
構成を作成したら、Microsoft .NET トランスポート・プロトコルを使用するサービス呼び出しでその構成を使用できます。Generic Service Client の
「構成」リストを使用して、既存の構成を編集するか、構成の複製を作成します。