2013-02-20 4 views

Antwort

12

es ist so ziemlich wie Sie erwarten, Transportsicherheit sichert den Transport - z. SSL über HTTP, während Nachrichtensicherheit Nachrichten sichert. Hier ist eine Msdn Übersicht aus Gründen der Nachrichtensicherheit zu verwenden: http://msdn.microsoft.com/en-us/library/ms733137.aspx

und einen Überblick für den Verkehr: http://msdn.microsoft.com/en-us/library/ms729700.aspx

(Von der Nachrichtensicherheit Link): Windows Communication Foundation (WCF) hat zwei Hauptmodi für die Bereitstellung von Sicherheit (Transport und Nachricht) und ein dritter Modus (TransportWithMessageCredential), der die beiden verbindet. In diesem Thema werden die Sicherheit von Nachrichten und ihre Gründe erläutert.

Was ist Nachrichtensicherheit?

Nachrichtensicherheit verwendet die WS-Sicherheitsspezifikation zum Sichern von Nachrichten. Die WS-Sicherheitsspezifikation beschreibt Erweiterungen der SOAP-Nachrichtenübertragung, um Vertraulichkeit, Integrität und Authentifizierung auf der SOAP-Nachrichtenebene (anstelle der Transportebene) zu gewährleisten.

Kurz gesagt unterscheidet sich die Nachrichtensicherheit von der Transportsicherheit, indem die Sicherheitsanmeldeinformationen und Ansprüche mit jeder Nachricht zusammen mit einem Nachrichtenschutz (Signieren oder Verschlüsseln) eingekapselt werden. Wenn die Sicherheit direkt auf die Nachricht angewendet wird, indem ihr Inhalt geändert wird, kann die gesicherte Nachricht in Bezug auf die Sicherheitsaspekte selbst enthalten sein. Dies ermöglicht einige Szenarien, die bei Verwendung der Transportsicherheit nicht möglich sind. Message Security

Gründe

In Sicherheit auf Nachrichtenebene zu verwenden, die alle die Sicherheitsinformation in der Nachricht gekapselt. Das Sichern der Nachricht mit der Sicherheit auf Nachrichtenebene anstelle der Sicherheit auf Transportebene hat die folgenden Vorteile: • Ende-zu-Ende-Sicherheit. Die Transportsicherheit, z. B. Secure Sockets Layer (SSL), sichert nur Nachrichten, wenn die Kommunikation Punkt-zu-Punkt erfolgt. Wenn die Nachricht an einen oder mehrere SOAP-Vermittler (zum Beispiel einen Router) weitergeleitet wird, bevor sie den endgültigen Empfänger erreicht, ist die Nachricht selbst nicht geschützt, sobald ein Vermittler sie aus der Leitung liest. Darüber hinaus ist die Client-Authentifizierungsinformation nur für den ersten Vermittler verfügbar und muss bei Bedarf out-of-band erneut an den endgültigen Empfänger übertragen werden. Dies gilt auch dann, wenn die gesamte Route SSL-Sicherheit zwischen einzelnen Hops verwendet. Da Nachrichtensicherheit direkt mit der Nachricht arbeitet und die darin enthaltene XML sichert, bleibt die Sicherheit bei der Nachricht erhalten, unabhängig davon, wie viele Vermittler beteiligt sind, bevor sie den endgültigen Empfänger erreicht. Dies ermöglicht ein echtes End-to-End-Sicherheitsszenario.

• Erhöhte Flexibilität. Teile der Nachricht anstelle der gesamten Nachricht können signiert oder verschlüsselt werden. Dies bedeutet, dass Intermediäre die Teile der Nachricht, die für sie bestimmt sind, anzeigen können.Wenn der Absender einen Teil der Informationen in der Nachricht sichtbar machen muss, die für die Vermittler sichtbar sind, aber sicherstellen will, dass er nicht manipuliert wird, kann er ihn einfach unterschreiben, aber unverschlüsselt lassen. Da die Signatur Teil der Nachricht ist, kann der ultimative Empfänger verifizieren, dass die Information in der Nachricht intakt empfangen wurde. Ein Szenario hat möglicherweise einen SOAP-Intermediärdienst, der die Nachricht entsprechend dem Wert der Aktionskopfzeile routet. Standardmäßig verschlüsselt WCF den Aktionswert nicht, sondern signiert ihn, wenn die Nachrichtensicherheit verwendet wird. Daher stehen diese Informationen allen Intermediären zur Verfügung, aber niemand kann sie ändern.

• Unterstützung für mehrere Transporte. Sie können gesicherte Nachrichten über viele verschiedene Transporte senden, z. B. Named Pipes und TCP, ohne sich aus Sicherheitsgründen auf das Protokoll verlassen zu müssen. Mit der Sicherheit auf Transportebene sind alle Sicherheitsinformationen auf eine einzelne bestimmte Transportverbindung beschränkt und nicht aus dem Nachrichteninhalt selbst verfügbar. Die Nachrichtensicherheit sorgt dafür, dass die Nachricht unabhängig vom Transport, den Sie zum Übertragen der Nachricht verwenden, sicher ist. Der Sicherheitskontext ist direkt in die Nachricht eingebettet.

• Unterstützung für eine breite Palette von Anmeldeinformationen und Ansprüchen. Die Nachrichtensicherheit basiert auf der WS-Sicherheitsspezifikation, die ein erweiterbares Framework bereitstellt, das in der Lage ist, jeden beliebigen Anspruch innerhalb der SOAP-Nachricht zu übermitteln. Im Gegensatz zur Transportsicherheit ist die Anzahl der Authentifizierungsmechanismen oder Ansprüche, die Sie verwenden können, nicht durch die Transportfunktionen eingeschränkt. WCF-Nachrichtensicherheit umfasst mehrere Arten der Authentifizierung und Übertragung von Ansprüchen und kann bei Bedarf um zusätzliche Typen erweitert werden. Aus diesen Gründen ist beispielsweise ein Szenario mit Anmeldeinformationen für föderierte Datenbanken nicht ohne Nachrichtensicherheit möglich. Weitere Informationen zu Federation-Szenarien, die von WCF unterstützt werden, finden Sie unter Federation und ausgestellte Token.

+0

Also, wenn Sie SSL über HTTP verwenden wollen, brauchen Sie Transport-Sicherheit zumindest wenn ich nicht falsch liege? –

+0

per Definition, ssl über http sichert den Transport - nicht die Nachricht. Hier ist ein guter Leitfaden für die Verwendung: http://wcfsecurityguide.codeplex.com/ – NDJ

+1

Vielen Dank für Ihre Zeit und Hilfe! –

1

Mit dem Transport sichern Sie den Kanal, den Sie verwenden, und mit Nachricht die Nachricht (Inhalt), die Sie senden.

2

Transportsicherheit, z. B. Secure Sockets Layer (SSL), sichert nur Nachrichten, wenn die Kommunikation Punkt-zu-Punkt erfolgt. Wenn die Nachricht an einen oder mehrere SOAP-Vermittler (z. B. einen Router) weitergeleitet wird, bevor der ultimative Empfänger erreicht wird, ist die Nachricht selbst nicht geschützt, sobald ein Intermediär sie aus der Leitung liest.

Irreführend. Ein Netzwerkrouter oder Switch (OSI Layer 2 und 3) hat keinen Zugriff auf den Nachrichteninhalt, wenn er mit der Transportschichtsicherheit (serverseitiges SSL-Zertifikat) verschlüsselt ist, da das dienstseitige SSL-Zertifikat zum Entschlüsseln der Nachricht benötigt wird. Die Transportschicht-Sicherheit sichert die Nachricht zwischen dem Client und der beabsichtigten Ziel-IP-Adresse, da angenommen wird, dass nur der Ziel-Dienstanbieter das private SSL-Zertifikat besitzt, das zum Entschlüsseln der Nachricht erforderlich ist. Ein SOAP-Intermediär könnte den Inhalt nur lesen, wenn der SOAP-Intermediär (dh ESB) tatsächlich das beabsichtigte Nachrichtenziel ist, das den verschlüsselten Transportkanal mit dem Client tatsächlich herstellt, wodurch ein sicherer Kanal von Client zu Server unabhängig von der Anzahl von Netzwerk-Hops, Router und Switches usw. (OSI-Layer 2 und 3). Die Sicherheit auf Nachrichtenebene würde der Nachricht Sicherheit verleihen und Teile einer Nachricht verschlüsseln, wenn ein Middleware-ESB (beabsichtigter SOAP-Vermittler) Teile einer Nachricht lesen müsste, um Routing-Entscheidungen zu treffen (Content Based Routing), dies aber nicht sein sollte fähig, andere Teile einer Nachricht zu lesen, auf die nur von nachgelagerten Systemen zugegriffen werden sollte.

Verwandte Themen