다음을 통해 공유


전송 보안 포함한 기본 바인딩

TransportSecurity 샘플은 기본 바인딩과 함께 SSL 전송 보안을 사용하는 방법을 보여 줍니다. 이 샘플은 계산기 서비스를 구현하는 시작을 기반으로 합니다.

샘플 세부 정보

기본적으로 기본 바인딩은 HTTP 통신을 지원합니다. 이 샘플에서는 기본 바인딩에 대해 전송 보안을 사용하는 방법을 보여 줍니다. 샘플을 실행하려면 먼저 웹 서버 인증서 마법사를 사용하여 인증서를 만들고 할당해야 합니다.

참고 항목

이 샘플의 설치 절차 및 빌드 지침은 이 항목의 끝부분에 나와 있습니다.

샘플의 프로그램 코드는 시작하기 서비스의 코드와 동일합니다. 다음 샘플 구성과 같이 구성 파일 설정의 엔드포인트 정의 및 바인딩 정의를 수정하여 보안 통신을 사용하도록 설정합니다.

<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: 주소(예: https://localhost/servicemodelsamples/service.svc)에 액세스하려고 하면 보안 경고가 나타납니다. WCF(Windows Communication Foundation) 클라이언트가 테스트 인증서로 작업할 수 있도록 몇 가지 추가 코드가 클라이언트에 추가되어 보안 경고를 표시하지 않도록 합니다. 실제 인증서를 사용할 때는 이 코드 및 함께 사용되는 클래스가 필요하지 않습니다.

// 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. 다음 명령을 사용하여 ASP.NET 4.0을 설치합니다.

    %windir%\Microsoft.NET\Framework\v4.0.XXXXX\aspnet_regiis.exe /i /enable
    
  2. Windows Communication Foundation 샘플의 일회 설치 절차를 수행했는지 확인합니다.

  3. IIS(인터넷 정보 서비스) 서버 인증서 설치 지침을 수행했는지 확인합니다.

  4. C# 또는 Visual Basic .NET 버전의 솔루션을 빌드하려면 Building the Windows Communication Foundation Samples의 지침을 따릅니다.

  5. 단일 컴퓨터 또는 다중 컴퓨터 구성에서 샘플을 실행하려면 Windows Communication Foundation 샘플 실행의 지침을 따릅니다.