Erweiterte SchutzrichtlinieExtended Protection Policy

Der erweiterte Schutz ist eine Sicherheitsinitiative zum Schutz vor Man-In-The-Middle-Angriffen (MITM-Angriff, Janusangriff).Extended Protection is a security initiative for protecting against man-in-the-middle (MITM) attacks. Ein MITM-Angriff ist eine Sicherheitsbedrohung, bei der ein MITM die Anmeldeinformationen eines Clients an einen Server weiterleitet.A MITM attack is a security threat in which a MITM takes a client’s credentials and forwards it to a server.

VeranschaulichtDemonstrates

Erweiterter SchutzExtended protection

DiskussionDiscussion

Wenn sich Anwendungen über Kerberos, Digest oder NTLM mit HTTPS authentifizieren, wird zunächst ein Transport Level Security (TLS)-Kanal eingerichtet. Die Authentifizierung erfolgt dann über den sicheren Kanal.When applications authenticate using Kerberos, Digest or NTLM using HTTPS, a Transport Level Security (TLS) channel is first established and then authentication takes place using the secure channel. Zwischen dem von SSL und dem bei der Authentifizierung erstellten Sitzungsschlüssel besteht jedoch keine Bindung.However, there is no binding between the session key generated by SSL and the session key generated during authentication. Jeder MITM kann sich zwischen den Client und den Server schalten und anfangen, die Anforderungen vom Client weiterzuleiten, auch wenn der Transportkanal selbst sicher ist. Der Server selbst kann nicht feststellen, ob der sichere Kanal vom Client oder von einem MITM eingerichtet wurde.Any MITM can establish itself between the client and the server and start forwarding the requests from the client, even when the transport channel itself is secure, because the server has no way of knowing whether the secure channel has been established from the client or a MITM. Die Lösung bei einem Szenario dieser Art besteht darin, den äußeren TLS-Kanal mit dem inneren Authentifizierungskanal auf eine Weise zu binden, die es dem Server ermöglicht, festzustellen, ob es einen MITM gibt.The solution in this scenario is to bind the outer TLS channel with the inner authentication channel such that the server can detect if there is a MITM.

Hinweis

Dieses Beispiel funktioniert nur, wenn es unter IIS gehostet wird und nicht unter Cassini – Visual Studio Development Server, da hier keine HTTPS-Unterstützung gegeben ist.This sample only works when hosted on IIS and cannot work on Cassini – Visual Studio Development Server because Cassini does not support HTTPS.

Hinweis

Diese Funktion ist aktuell nur unter Windows 7 verfügbar.This feature is currently only available on Windows 7. Die folgenden Schritte gelten für Windows 7.The following steps are specific to Windows 7.

So können Sie das Beispiel einrichten, erstellen und ausführenTo set up, build, and run the sample

  1. Installieren Sie Internetinformationsdienste über in der Systemsteuerung, Programme hinzufügen/entfernen, Windows-Features.Install Internet Information Services from Control Panel, Add/Remove Programs, Windows Features.

  2. Installieren Sie Windows-Authentifizierung in Windows-Features, Internetinformationsdienste (IIS), WWW-Dienste, Sicherheit, und Windows-Authentifizierung.Install Windows Authentication in Windows Features, Internet Information Services, World Wide Web Services, Security, and Windows Authentication.

  3. Installieren Sie Windows Communication Foundation-HTTP-Aktivierung in Windows-Features, Microsoft .NET Framework 3.5.1, und Windows Communication Foundation-HTTP-Aktivierung.Install Windows Communication Foundation HTTP Activation in Windows Features, Microsoft .NET Framework 3.5.1, and Windows Communication Foundation HTTP Activation.

  4. In diesem Beispiel muss der Client eine Verbindung über einen sicheren Kanal zum Server herstellen. Dazu muss ein Serverzertifikat vorliegen, das im IIS (Internet Information Services)-Manager installiert werden kann.This sample requires the client to establish a secure channel with the server, so it requires the presence of a server certificate which can be installed from Internet Information Services (IIS) Manager.

    1. Öffnen Sie IIS-Manager.Open IIS Manager. Open Serverzertifikate, das angezeigt wird, der Ansicht "Feature" Registerkarte bei ausgewähltem Stammknoten (Computername).Open Server certificates, which appears in the Feature View tab when the root node (machine name) is selected.

    2. Erstellen Sie zum Testen dieses Beispiels ein selbstsigniertes Zertifikat.For the purpose of testing this sample, create a self-signed certificate. Wenn Sie von Internet Explorer keine Meldung hinsichtlich der fehlenden Sicherheit des Zertifikats erhalten möchten, installieren Sie das Zertifikat im entsprechenden Autoritätsspeicher für vertrauenswürdige Zertifikate.If you do not want Internet Explorer to prompt you about the certificate not being secure, install the certificate in the Trusted Certificate Root authority store.

  5. Öffnen der Aktionen Bereich für die Standardwebsite.Open the Actions pane for the default Web site. Klicken Sie auf Site bearbeiten, Bindungen.Click Edit Site, Bindings. Fügen Sie HTTPS als Typ hinzu, wenn nicht bereits vorhanden ist, und geben Sie die Portnummer 443 an.Add HTTPS as a type if not already present, with port number 443. Weisen Sie das im vorangehenden Schritt erstellte SSL-Zertifikat zu.Assign the SSL certificate created in the preceding step.

  6. Erstellen Sie den Dienst.Build the service. Hierdurch wird ein virtuelles Verzeichnis in IIS erstellt. Die DLL-, SVC- und CONFIG-Dateien, die dafür erforderlich sind, dass der Dienst über das Web gehostet wird, werden kopiert.This creates a virtual directory in IIS, and copies the .dll, .svc and .config files as required for the service to be Web hosted.

  7. Öffnen Sie IIS-Manager.Open IIS Manager. Mit der rechten Maustaste in des virtuellen Verzeichnis (ExtendedProtection), der im vorherigen Schritt erstellt wurde.Right-click the virtual directory (ExtendedProtection), which was created in the preceding step. Wählen Sie in Anwendung konvertieren.Select Convert to Application.

  8. Öffnen der Authentifizierung im IIS-Manager-Modul für dieses virtuelle Verzeichnis und aktivieren Sie Windows-Authentifizierung.Open the Authentication module in IIS Manager for this virtual directory and enable Windows Authentication.

  9. Open Erweiterte Einstellungen unter Windows-Authentifizierung für dieses virtuelle Verzeichnis, und legen Sie es auf erforderlich.Open Advanced Settings under Windows Authentication for this virtual directory and set it to Required.

  10. Sie können den Dienst testen, indem Sie die HTTPS-URL in einem Browserfenster öffnen. (Geben Sie einen vollqualifizierten Domänennamen an.)You can test the service by accessing the HTTPS URL from a browser window (Provide a fully-qualified domain name). Möchten Sie von einem Remotecomputer aus auf die URL zugreifen, konfigurieren Sie die Firewall entsprechend, damit ein- und ausgehende HTTP- und HTTPS-Verbindungen hergestellt werden können.If you want to access this URL from a remote machine, make sure that the firewall is opened for all incoming HTTP and HTTPS connections.

  11. Öffnen Sie die Clientkonfigurationsdatei, und geben Sie einen vollqualifizierten Domänennamen für das Client- oder Endpunktadressattribut das, mit dem der <<full_machine_name>> ersetzt wird.Open the client configuration file and provide a fully-qualified domain name for the client or endpoint address attribute that replaces <<full_machine_name>>.

  12. Führen Sie den Client aus.Run the client. Der Client kommuniziert mit dem Dienst, der einen sicheren Kanal einrichtet und den erweiterten Schutz verwendet.The client communicates with the service, which establishes a secure channel and uses extended protection.

Wichtig

Die Beispiele sind möglicherweise bereits auf dem Computer installiert.The samples may already be installed on your machine. Suchen Sie nach dem folgenden Verzeichnis (Standardverzeichnis), bevor Sie fortfahren.Check for the following (default) directory before continuing.

<InstallDrive>:\WF_WCF_Samples

Wenn dieses Verzeichnis nicht vorhanden ist, rufen Sie Windows Communication Foundation (WCF) and Windows Workflow Foundation (WF) Samples for .NET Framework 4 auf, um alle Windows Communication Foundation (WCF)Windows Communication Foundation (WCF) - und WFWF -Beispiele herunterzuladen.If this directory does not exist, go to Windows Communication Foundation (WCF) and Windows Workflow Foundation (WF) Samples for .NET Framework 4 to download all Windows Communication Foundation (WCF)Windows Communication Foundation (WCF) and WFWF samples. Dieses Beispiel befindet sich im folgenden Verzeichnis.This sample is located in the following directory.

<InstallDrive>:\WF_WCF_Samples\WCF\Basic\Services\Security\ExtendedProtection