Sdílet prostřednictvím


Základní vazby u zabezpečení přenosu

Ukázka TransportSecurity ukazuje použití zabezpečení přenosu SSL se základní vazbou. Tato ukázka vychází ze služby Začínáme , která implementuje službu kalkulačky.

Ukázkové podrobnosti

Ve výchozím nastavení základní vazba podporuje komunikaci HTTP. Ukázka ukazuje, jak povolit zabezpečení přenosu pro základní vazbu. Před spuštěním ukázky musíte vytvořit certifikát a přiřadit ho pomocí Průvodce certifikátem webového serveru.

Poznámka:

Postup nastavení a pokyny k sestavení pro tuto ukázku najdete na konci tohoto tématu.

Kód programu v ukázce je stejný jako kód služby Začínáme . Definice koncového bodu a definice vazby v nastavení konfiguračního souboru jsou upraveny tak, aby umožňovaly zabezpečenou komunikaci, jak je znázorněno v následující ukázkové konfiguraci.

<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>

Vzhledem k tomu, že certifikát použitý v této ukázce je testovací certifikát vytvořený pomocí Makecert.exe, zobrazí se výstraha zabezpečení při pokusu o přístup k adrese HTTPS: v prohlížeči, například https://localhost/servicemodelsamples/service.svc. Aby klient WCF (Windows Communication Foundation) mohl pracovat s testovacím certifikátem, přidá se do klienta další kód, který potlačí výstrahu zabezpečení. Tento kód a doprovodná třída nejsou nutné při použití skutečných certifikátů.

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

Při spuštění ukázky se požadavky na operace a odpovědi zobrazí v okně konzoly klienta. Stisknutím klávesy ENTER v okně klienta klienta ukončete klienta.

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.

Nastavení, sestavení a spuštění ukázky

  1. Pomocí následujícího příkazu nainstalujte ASP.NET 4.0:

    %windir%\Microsoft.NET\Framework\v4.0.XXXXX\aspnet_regiis.exe /i /enable
    
  2. Ujistěte se, že jste pro ukázky windows Communication Foundation provedli jednorázovou instalační proceduru.

  3. Ujistěte se, že jste provedli pokyny k instalaci certifikátu serveru Internetová informační služba (IIS).

  4. Pokud chcete sestavit edici C# nebo Visual Basic .NET řešení, postupujte podle pokynů v části Sestavení ukázek windows Communication Foundation.

  5. Pokud chcete spustit ukázku v konfiguraci s jedním nebo více počítači, postupujte podle pokynů v části Spuštění ukázek windows Communication Foundation.