Delen via


HTTP en HTTPS configureren

WCF-services en -clients kunnen communiceren via HTTP en HTTPS. De HTTP/HTTPS-instellingen worden geconfigureerd met behulp van IIS (Internet Information Services) of met behulp van een opdrachtregelprogramma. Wanneer een WCF-service wordt gehost onder IIS, kunnen HTTP- of HTTPS-instellingen worden geconfigureerd binnen IIS (met behulp van het hulpprogramma inetmgr.exe). Als een WCF-service zelf wordt gehost, worden HTTP- of HTTPS-instellingen geconfigureerd met behulp van een opdrachtregelprogramma.

U wilt minimaal een URL-registratie configureren en een firewall-uitzondering toevoegen voor de URL die uw service zal gebruiken. U kunt deze instellingen configureren met de tool Netsh.exe.

Naamruimtereserveringen configureren

Naamruimtereservering wijst de rechten voor een deel van de HTTP-URL-naamruimte toe aan een bepaalde groep gebruikers. Een reservering geeft die gebruikers het recht om services te maken die in dat deel van de naamruimte luisteren. Reserveringen zijn URL-voorvoegsels, wat betekent dat de reservering alle subpaden van het reserveringspad dekt. Naamruimtereserveringen staan twee manieren toe om jokertekens te gebruiken. In de documentatie van de HTTP Server API wordt de volgorde van omzetting beschreven tussen naamruimteclaims die betrekking hebben op jokertekens.

Een actieve toepassing kan een soortgelijke aanvraag maken om naamruimteregistraties toe te voegen. Registraties en reserveringen strijden om delen van de naamruimte. Een reservering kan voorrang hebben op een registratie volgens de volgorde van resolutie die wordt gegeven in de volgorde van resolutie tussen naamruimteclaims die betrekking hebben op jokertekens. In dit geval blokkeert de reservering de actieve applicatie voor het ontvangen van aanvragen.

In het volgende voorbeeld wordt de tool Netsh.exe gebruikt:

netsh http add urlacl url=http://+:80/MyUri user=DOMAIN\user

Met deze opdracht wordt een URL-reservering toegevoegd voor de opgegeven URL-naamruimte voor het DOMAIN\user-account. Voor meer informatie over het gebruik van de netsh-opdracht typt u netsh http add urlacl /? een opdrachtprompt en drukt u op Enter.

Een firewall-uitzondering configureren

Wanneer u zelf een WCF-service host die via HTTP communiceert, moet er een uitzondering worden toegevoegd aan de firewallconfiguratie om binnenkomende verbindingen met een bepaalde URL toe te staan.

SSL-certificaten configureren

Het SSL-protocol (Secure Sockets Layer) maakt gebruik van certificaten op de client en de server om coderingssleutels op te slaan. De server levert het SSL-certificaat wanneer er een verbinding tot stand wordt gebracht, zodat de client de identiteit van de server kan verifiëren. De server kan ook een certificaat aanvragen bij de client om wederzijdse verificatie van beide zijden van de verbinding te bieden.

Certificaten worden opgeslagen in een gecentraliseerde opslag op basis van het IP-adres en het poortnummer van de verbinding. Het speciale IP-adres 0.0.0.0 komt overeen met elk IP-adres voor de lokale machine. Houd er rekening mee dat het certificaatarchief geen onderscheid maakt tussen URL's op basis van het pad. Services met hetzelfde IP-adres en dezelfde poortcombinatie moeten certificaten delen, zelfs als het pad in de URL voor de services afwijkt.

Zie Procedure: Een poort configureren met een SSL-certificaat voor stapsgewijze instructies.

De IP-luisterlijst configureren

De HTTP Server-API bindt alleen aan een IP-adres en poort zodra een gebruiker een URL registreert. Standaard bindt de HTTP Server-API aan de poort in de URL voor alle IP-adressen van de computer. Er ontstaat een conflict als een toepassing die geen gebruik maakt van de HTTP Server-API, eerder is gebonden aan die combinatie van IP-adres en poort. Met de IP-luisterlijst kunnen WCF-services naast toepassingen bestaan die een poort gebruiken voor sommige IP-adressen van de machine. Als de IP-luisterlijst vermeldingen bevat, bindt de HTTP Server-API alleen aan de IP-adressen die in de lijst worden opgegeven. Voor het wijzigen van de IP-luisterlijst zijn beheerdersbevoegdheden vereist.

Gebruik de netsh-tool om de IP-luisterlijst te wijzigen, zoals wordt weergegeven in het volgende voorbeeld:

netsh http add iplisten ipaddress=0.0.0.0:8000

Andere configuratie-instellingen

Wanneer u WSDualHttpBindinggebruikt, gebruikt de clientverbinding standaardinstellingen die compatibel zijn met naamruimtereserveringen en de Windows-firewall. Als u ervoor kiest om het clientbasisadres van een dubbele verbinding aan te passen, moet u deze HTTP-instellingen op de client ook configureren zodat ze overeenkomen met het nieuwe adres.

De HTTP Server-API heeft een aantal geavanceerde configuratie-instellingen die niet beschikbaar zijn via HttpCfg. Deze instellingen worden bijgehouden in het register en zijn van toepassing op alle toepassingen die worden uitgevoerd op de systemen die gebruikmaken van de HTTP Server-API's. Zie Http.sys registerinstellingen voor IIS voor meer informatie over deze instellingen. De meeste gebruikers hoeven deze instellingen niet te wijzigen.

Zie ook