Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In dit artikel wordt het extendedprotection-voorbeeld beschreven.
Extended Protection is een beveiligingsinitiatief voor bescherming tegen man-in-the-middle-aanvallen (MITM). Een MITM-aanval is een beveiligingsrisico waarbij een MITM de referenties van een client gebruikt en doorstuurt naar een server.
Discussie
Wanneer toepassingen zich authenticeren met behulp van Kerberos, Digest of NTLM via HTTPS, wordt eerst een TLS-kanaal (Transport Level Security) tot stand gebracht en vindt vervolgens verificatie plaats via het beveiligde kanaal. Er is echter geen binding tussen de sessiesleutel die wordt gegenereerd door SSL en de sessiesleutel die tijdens de verificatie is gegenereerd. Elke MITM kan zichzelf tot stand brengen tussen de client en de server en beginnen met het doorsturen van de aanvragen van de client, zelfs als het transportkanaal zelf veilig is, omdat de server geen manier heeft om te weten of het beveiligde kanaal is ingesteld vanaf de client of een MITM. De oplossing in dit scenario is het verbinden van het buitenste TLS-kanaal met het binnenste verificatiekanaal, zodat de server kan detecteren of er een MITM is.
Opmerking
Dit voorbeeld werkt alleen wanneer deze wordt gehost op IIS.
Opmerking
De volgende stappen zijn specifiek voor Windows 7.
Het voorbeeld instellen, compileren en uitvoeren
Installeer Internet Information Services vanuit het Configuratiescherm, Programma's toevoegen/verwijderen, Windows-functies.
Installeer Windows-verificatie in Windows-functies, Internet Information Services, World Wide Web Services, Beveiliging en Windows-verificatie.
Installeer HTTP-activering van Windows Communication Foundation in Windows-functies, Microsoft .NET Framework 3.5.1 en HTTP-activering van Windows Communication Foundation.
Voor dit voorbeeld is vereist dat de client een beveiligd kanaal met de server tot stand brengt, dus vereist het de aanwezigheid van een servercertificaat dat kan worden geïnstalleerd vanuit IIS-beheer (Internet Information Services).
Open IIS-beheer. Open Servercertificaten, die worden weergegeven op het tabblad Functieweergave wanneer het hoofdknooppunt (computernaam) is geselecteerd.
Voor het testen van dit voorbeeld maakt u een zelfondertekend certificaat. Als u niet wilt dat de browser u waarschuwt dat het certificaat niet veilig is, installeert u het certificaat in de opslagplaats voor vertrouwde basiscertificeringsinstanties.
Open het deelvenster Acties voor de standaardwebsite. Klik op Site bewerken, bindingen. Voeg HTTPS toe als een type als dit nog niet aanwezig is, met poortnummer 443. Wijs het SSL-certificaat toe dat u in de vorige stap hebt gemaakt.
Bouw de service. Hiermee maakt u een virtuele map in IIS en kopieert u de .dll-, .svc- en .config-bestanden zoals vereist voor de service die wordt gehost op het web.
Open IIS-beheer. Klik met de rechtermuisknop op de virtuele map (ExtendedProtection), die in de vorige stap is gemaakt. Selecteer Converteren naar toepassing.
Open de verificatiemodule in IIS Manager voor deze virtuele map en schakel Windows-verificatie in.
Open Geavanceerde instellingen onder Windows-verificatie voor deze virtuele map en stel deze in op Vereist.
U kunt de service testen door toegang te krijgen tot de HTTPS-URL vanuit een browservenster (Geef een volledig gekwalificeerde domeinnaam op). Als u toegang wilt krijgen tot deze URL vanaf een externe computer, moet u ervoor zorgen dat de firewall is geopend voor alle binnenkomende HTTP- en HTTPS-verbindingen.
Open het clientconfiguratiebestand en geef een volledig gekwalificeerde domeinnaam op voor het client- of eindpuntadreskenmerk dat vervangt
<<full_machine_name>>.Voer de client uit. De client communiceert met de service, waarmee een beveiligd kanaal wordt gemaakt en uitgebreide beveiliging wordt gebruikt.