トランスポート セキュリティ付き BasicBinding

Download sample

このサンプルでは、基本的なバインディングを使用した SSL トランスポート セキュリティを示します。このサンプルは、電卓サービスを実装する「入門サンプル」に基づいています。

既定で、基本的なバインディングは HTTP 通信をサポートします。このサンプルでは、基本的なバインディングのトランスポート セキュリティを有効にする方法を示します。このサンプルを実行する前に、証明書を作成し、Web サーバー証明書ウィザードを使用してあらかじめ割り当てておく必要があります。

Noteメモ :

このサンプルのセットアップ手順とビルド手順については、このトピックの最後を参照してください。

サンプル内のプログラム コードは、「入門サンプル」サービスのプログラム コードと同じです。次に示すサンプル構成のように、構成ファイル設定でエンドポイントとバインディングを定義すると、通信のセキュリティ保護が有効になるように変更されます。

<system.serviceModel>
   <services>
      <service 
          type="Microsoft.ServiceModel.Samples.CalculatorService"
          behaviorConfiguration="CalculatorServiceBehavior">
         <endpoint address=""
               binding="basicHttpBinding"
               bindingConfiguration="Binding1" 
               contract="Microsoft.ServiceModel.Samples.ICalculator" />
      </service>
   </services>
    <bindings>
        <basicHttpBinding>
        <!-- Configure basicHttpBinding with Transport security -- >
        <!-- mode and clientCredentialType set to None.-->
           <binding name="Binding1">
               <security mode="Transport">
                   <transport clientCredentialType="None"/>
               </security>
           </binding>
        </basicHttpBinding>
    </bindings>
    ...
</system.serviceModel>

このサンプルで使用する証明書は Makecert.exe で作成されたテスト証明書なので、ブラウザで https://localhost/servicemodelsamples/service.svc のような HTTPS: アドレスにアクセスしようとするとセキュリティ警告が表示されます。Windows Communication Foundation (WCF) クライアントがテスト証明書に対して動作するようにするには、クライアントにコードを追加して、セキュリティ警告を非表示にする必要があります。そのためのコードとそれに必要なクラスは、実際の証明書を使用するときには不要です。

// This code is required only for test certificates such as those 
// created by Makecert.exe.
PermissiveCertificatePolicy.Enact(
                           "CN=ServiceModelSamples-HTTPS-Server");

このサンプルを実行すると、操作要求および応答はクライアントのコンソール ウィンドウに表示されます。クライアントをシャットダウンするには、クライアント ウィンドウで Enter キーを押します。

Add(100,15.99) = 115.99
Subtract(145,76.54) = 68.46
Multiply(9,81.25) = 731.25
Divide(22,7) = 3.14285714285714

Press <ENTER> to terminate client.

サンプルをセットアップしてビルドし、実行するには

  1. Windows Communication Foundation サンプルの 1 回限りのセットアップの手順」が実行済みであることを確認します。

  2. インターネット インフォメーション サービス (IIS) サーバー証明書インストール手順」が実行済みであることを確認します。

  3. ソリューションの C# 版または Visual Basic .NET 版をビルドするには、「Windows Communication Foundation サンプルのビルド」の手順に従います。

  4. サンプルを単一コンピュータ構成または複数コンピュータ構成で実行するには、「Windows Communication Foundation サンプルの実行」の手順に従います。

Footer image

Copyright © 2007 by Microsoft Corporation.All rights reserved.