Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Systémové vazby, které jsou součástí windows Communication Foundation (WCF), nabízejí rychlý způsob, jak programovat aplikace WCF. S jednou výjimkou mají všechny vazby povolené výchozí schéma zabezpečení. Toto téma vám pomůže vybrat správné zabezpečení dle vašich potřeb.
Přehled zabezpečení WCF najdete v tématu Přehled zabezpečení. Další informace o programování WCF pomocí vazeb naleznete v tématu Programování zabezpečení WCF.
Pokud jste už vybrali vazbu, můžete zjistit další informace o běhovém chování, které jsou spojené se zabezpečením v Chování zabezpečení.
Některé funkce zabezpečení nelze programovat pomocí systémových vazeb. Další kontrolu nad použitím vlastní vazby najdete v tématu Možnosti zabezpečení s vlastními vazbami.
Funkce zabezpečení vazeb
WCF obsahuje řadu systémově poskytovaných vazeb, které splňují většinu potřeb. Pokud konkrétní vazba nestačí, můžete také vytvořit vlastní vazbu. Seznam systémových vazeb najdete v tématu System-Provided Vazby. Další informace o vlastních vazbách naleznete v tématu Vlastní vazby.
Každá vazba ve WCF má dvě formy: jako rozhraní API a jako element XML používaný v konfiguračním souboru. Například WSHttpBinding (API) má protějšek v <wsHttpBinding>.
Následující část uvádí oba formuláře pro každou vazbu a shrnuje funkce zabezpečení.
BasicHttp
V kódu použijte BasicHttpBinding třídu, v konfiguraci použijte <basicHttpBinding>.
Toto propojení je určené pro použití s řadou stávajících technologií, včetně následujících:
ASP.NET webové služby (ASMX), verze 1.
Aplikace WSE (Web Service Enhancements).
Základní profil definovaný ve specifikaci interoperability webových služeb (WS-I) (https://go.microsoft.com/fwlink/?LinkId=38955).
Základní profil zabezpečení definovaný ve WS-I
Ve výchozím nastavení není tato vazba zabezpečená. Je navržený tak, aby mohl interoperovat se službami ASMX. Pokud je povolené zabezpečení, je vazba navržená pro bezproblémovou spolupráci s mechanismy zabezpečení Internetové informační služby (IIS), jako je základní ověřování, digest a integrované zabezpečení systému Windows. Další informace naleznete v části Přehled zabezpečení přenosu. Tato vazba podporuje následující:
Zabezpečení přenosu HTTPS
Základní ověřování HTTP.
WS-Security.
Další informace naleznete v tématu BasicHttpSecurity, BasicHttpMessageSecurity, BasicHttpMessageCredentialType a BasicHttpSecurityMode.
WSHttpBinding
V kódu použijte WSHttpBinding třídu; v konfiguraci použijte <wsHttpBinding>.
Tato vazba ve výchozím nastavení implementuje specifikaci WS-Security a poskytuje interoperabilitu se službami, které implementují specifikace WS-*. Podporuje následující:
Zabezpečení přenosu HTTPS
WS-Security.
Ochrana přenosu HTTPS se zabezpečením přihlašovacích údajů zpráv SOAP pro ověřování volajícího
Další informace naleznete v tématu WSHttpSecurity, MessageSecurityOverHttp, MessageCredentialType, SecurityMode, HttpTransportSecurity, HttpClientCredentialType a HttpProxyCredentialType.
WSDualHttpBinding
V kódu použijte WSDualHttpBinding třídu; v konfiguraci použijte <wsDualHttpBinding>.
Tato vazba je navržená tak, aby umožňovala duplexní aplikace služeb. Tato vazba implementuje specifikaci WS-Security pro zabezpečení přenosu na základě zpráv. Zabezpečení přenosu není k dispozici. Ve výchozím nastavení poskytuje následující funkce:
Implementuje zasílání zpráv WS-Reliable pro zajištění spolehlivosti.
Implementuje WS-Security pro zabezpečení přenosu a autentizaci.
Používá protokol HTTP k doručování zpráv.
Používá kódování zpráv ve formátu TEXT/XML.
Pomocí WS-Security (zabezpečení vrstvy zpráv) umožňuje vazba nakonfigurovat následující parametry:
Sada algoritmů zabezpečení, která určuje kryptografický algoritmus.
Možnosti vazby pro následující:
Poskytnutí přihlašovacích údajů služby, které jsou dostupné klientovi mimo hlavní kanál.
Poskytnutí přihlašovacích údajů služby vyjednaných ze služby v rámci nastavení kanálu
Pro více informací se podívejte na WSDualHttpSecurity a WSDualHttpSecurityMode.
NetTcpBinding
V kódu použijte NetTcpBinding třídu; v konfiguraci použijte <netTcpBinding>.
Tato vazba je optimalizovaná pro komunikaci mezi počítači. Ve výchozím nastavení má následující vlastnosti:
Implementuje zabezpečení vrstvy přenosu.
Využívá zabezpečení Windows pro zabezpečení přenosu a ověřování.
Používá protokol TCP pro přenos.
Implementuje kódování binární zprávy.
Implementuje zasílání zpráv WS-Reliable.
Mezi možnosti patří:
Zabezpečení vrstvy zpráv (pomocí WS-Security).
Zabezpečení přenosu pomocí přihlašovacích údajů zpráv – důvěrnost a integrita poskytované protokolem TLS (Transport Layer Security) přes protokol TCP a přihlašovací údaje pro autorizaci poskytované ws-Security.
Další informace naleznete v tématu NetTcpSecurity, TcpTransportSecurity, TcpClientCredentialType, MessageSecurityOverTcp a MessageCredentialType.
NetNamedPipeBinding
V kódu použijte NetNamedPipeBinding třídu; v konfiguraci použijte <netNamedPipeBinding>.
Tato vazba je optimalizovaná pro komunikaci mezi procesy (obvykle na stejném počítači). Ve výchozím nastavení má tato vazba následující charakteristiky:
Používá zabezpečení přenosu pro přenos zpráv a jejich ověřování.
Používá pojmenované kanály pro doručování zpráv.
Implementuje kódování binární zprávy.
Šifrování a podepisování zpráv
Mezi možnosti patří:
- Ověřování pomocí zabezpečení systému Windows.
Další informace najdete v tématech NetNamedPipeSecurity, NetNamedPipeSecurityMode a NamedPipeTransportSecurity.
MsmqIntegrationBinding
V kódu použijte MsmqIntegrationBinding třídu; v konfiguraci použijte <msmqIntegrationBinding>.
Tato vazba je optimalizovaná pro vytváření klientů a služeb WCF, které spolupracují s koncovými body služby Microsoft Message Queuing (MSMQ), které nejsou WCF.
Tato vazba ve výchozím nastavení používá zabezpečení přenosu a poskytuje následující vlastnosti zabezpečení:
Zabezpečení lze vypnout (Bez zabezpečení).
Zabezpečení přenosu MSMQ (přeprava).
Pro více informací se podívejte na NetMsmqSecurity a NetMsmqSecurityMode.
NetMsmqBinding
V kódu použijte NetMsmqBinding třídu; v konfiguraci použijte <netMsmqBinding>.
Tato vazba je určena k použití při vytváření služeb WCF, které vyžadují podporu zpráv ve frontě MSMQ.
Tato vazba ve výchozím nastavení používá zabezpečení přenosu a poskytuje následující vlastnosti zabezpečení:
Zabezpečení lze vypnout (Bez zabezpečení).
Zabezpečení přenosu MSMQ (přeprava).
Zabezpečení zpráv založené na protokolu SOAP (Message).
Souběžné zabezpečení přenosu a zpráv (obojí).
Podporované typy přihlašovacích údajů klienta: None, Windows, UserName, Certificate, IssuedToken.
Přihlašovací Certificate údaje se podporují pouze v případě, že je režim zabezpečení nastavený na Both nebo Message.
Pro více informací se podívejte na MessageSecurityOverMsmq a MsmqTransportSecurity.
WSFederationHttpBinding
V kódu použijte WSFederationHttpBinding třídu; v konfiguraci použijte <wsFederationHttpBinding>.
Ve výchozím nastavení tato vazba používá WS-Security (zabezpečení vrstvy zpráv).
Další informace naleznete v tématu FederaceWSFederationHttpSecurity a WSFederationHttpSecurityMode.
Vlastní vazby
Pokud žádná ze systémových vazeb nesplňuje požadavky, můžete vytvořit vlastní vazbu s vlastním prvkem vazby zabezpečení. Další informace naleznete v části Možnosti zabezpečení s vlastními vazbami.
Možnosti vazby
Následující tabulka shrnuje funkce nabízené v nastavení režimu zabezpečení, to znamená, že uvádí funkce, které jsou k dispozici, když je režim zabezpečení nastaven na Transport, Messagenebo TransportWithMessageCredential. Tato tabulka vám pomůže najít funkce zabezpečení, které vaše aplikace vyžaduje.
| Nastavení | Vlastnosti |
|---|---|
| Přeprava | Ověřování serveru Ověřování klientů Zabezpečení typu point-to-point Interoperabilita Hardwarová akcelerace Vysoká propustnost Zabezpečený firewall Aplikace s vysokou latencí Opětovné šifrování napříč několika skoky |
| Zpráva | Ověřování serveru Ověřování klientů Komplexní zabezpečení Interoperabilita Bohaté nároky Federace Vícefaktorové ověřování Vlastní tokeny Služba notáře nebo časového razítka Aplikace s vysokou latencí Trvalost podpisů zpráv |
| TransportWithMessageCredential | Ověřování serveru Ověřování klientů Zabezpečení typu point-to-point Interoperabilita Hardwarová akcelerace Vysoká propustnost Nároky bohatého klienta Federace Vícefaktorové ověřování Vlastní tokeny Zabezpečený firewall Aplikace s vysokou latencí Opětovné šifrování napříč několika skoky |
Následující tabulka uvádí vazby, které podporují různá nastavení režimu. Vyberte vazbu z tabulky, která se má použít k vytvoření koncového bodu služby.
| Závazný | Podpora režimu přenosu | Podpora režimu zpráv | Podpora TransportWithMessageCredential |
|---|---|---|---|
BasicHttpBinding |
Ano | Ano | Ano |
WSHttpBinding |
Ano | Ano | Ano |
WSDualHttpBinding |
Ne | Ano | Ne |
NetTcpBinding |
Ano | Ano | Ano |
NetNamedPipeBinding |
Ano | Ne | Ne |
NetMsmqBinding |
Ano | Ano | Ne |
MsmqIntegrationBinding |
Ano | Ne | Ne |
wsFederationHttpBinding |
Ne | Ano | Ano |
Přeprava přihlašovacích údajů v rámci vazeb
Následující tabulka uvádí typy přihlašovacích údajů klienta, které jsou k dispozici při použití buď BasicHttpBinding nebo WSHttpBinding v režimu zabezpečení přenosu.
| Typ | Popis |
|---|---|
| Žádné | Určuje, že klient nemusí prezentovat žádné přihlašovací údaje. To se překládá jako anonymní klient. |
| Basic | Základní ověřování. Další informace naleznete v dokumentu RFC 2617 – OVĚŘOVÁNÍ HTTP: Základní ověřování a ověřování hodnotou hash, k dispozici na adrese https://go.microsoft.com/fwlink/?LinkId=84023. |
| Přehled | Ověřování pomocí digestu. Další informace naleznete v dokumentu RFC 2617 – OVĚŘOVÁNÍ HTTP: Základní ověřování a ověřování hodnotou hash, k dispozici na adrese https://go.microsoft.com/fwlink/?LinkId=84023. |
| protokol NTLM | Ověřovací systém NT LAN Manager (NTLM). |
| Windows | Ověřování systému Windows. |
| Certifikát | Ověřování prováděné pomocí certifikátu |
| Vystavenýtoken | Umožňuje službě vyžadovat ověření klienta pomocí tokenu vydaného službou tokenů zabezpečení nebo CardSpace. Další informace najdete v tématu Federace a vystavené tokeny. |
Klientské přihlašovací údaje ve vazbách
Následující tabulka uvádí typy přihlašovacích údajů klienta, které jsou k dispozici při použití vazby v režimu zabezpečení zprávy.
| Typ | Popis |
|---|---|
| Žádné | Umožňuje službě komunikovat s anonymními klienty. |
| Windows | Umožňuje, aby se výměny zpráv SOAP provedly v rámci ověřeného kontextu přihlašovacích údajů systému Windows. |
| Uživatelské jméno | Umožňuje službě vyžadovat ověření klienta pomocí přihlašovacích údajů uživatelského jména. Všimněte si, že pokud je režim zabezpečení nastaven na TransportWithMessageCredential, WCF nepodporuje odesílání hesla digest nebo odvození klíčů pomocí hesla a použití takových klíčů pro zabezpečení režimu zpráv. Wcf proto vynucuje zabezpečení přenosu při použití přihlašovacích údajů uživatelského jména. |
| Certifikát | Umožňuje službě vyžadovat ověření klienta pomocí certifikátu. |
| Vystavenýtoken | Umožňuje službě použít službu tokenů zabezpečení k poskytnutí vlastního tokenu. |