Was ist der Unterschied zwischen Transport-security & Message security in WCF
Ich bin auf der Suche in WCF & Sicherheit.
Es gibt verschiedene Sicherheits-Modi, aber das große Bild ist, dass es gibt 2 "Ebenen", die Sie sichern können : Transport oder Nachricht.
Kann jemand erklären, diese in mehr Tiefe, bitte?
Was muss ich mir vorstellen wenn ich die Sicherung von Verkehr, wie funktioniert es, etc.
Du musst angemeldet sein, um einen Kommentar abzugeben.
es ist ziemlich viel, wie man erwarten würde -, transport-security sichert den transport - z.B. SSL über HTTP, in der Erwägung, dass die message-Sicherheit schützt Nachrichten. Hier ist ein msdn-übersicht für die Gründe für die Verwendung von message-Sicherheit:
http://msdn.microsoft.com/en-us/library/ms733137.aspx
und eine übersicht für transport:
http://msdn.microsoft.com/en-us/library/ms729700.aspx
(Von der message security-link):
Windows Communication Foundation (WCF) hat zwei wichtige Modi für die Gewährleistung der Sicherheit (Verkehr und Nachricht) und einen Dritten Modus (TransportWithMessageCredential), die die beiden verbindet. In diesem Thema wird erläutert, message security und die Gründe, es zu benutzen.
Was Ist Die Message-Sicherheit?
Message security verwendet die WS-Security-Spezifikation, um sichere Nachrichten. Die WS-Securityspecification beschreibt Erweiterungen zu SOAP-messaging zu gewährleisten, die Vertraulichkeit, Integrität und Authentifizierung auf SOAP-nachrichtenebene (statt der transport-Ebene).
Kurz gesagt, die message-Sicherheit unterscheidet sich von der transport-Sicherheit durch Kapselung der sicherheitsnachweise und Ansprüche, die bei jeder Nachricht zusammen mit jeder Nachricht-Schutz (Signierung oder Verschlüsselung). Anwenden der Sicherheit direkt an die Nachricht, indem Sie dessen Inhalt es ermöglicht die gesicherte Nachricht selbst enthält mit Bezug auf die Sicherheitsaspekte. Dadurch können einige Szenarien sind nicht möglich, wenn der transport-Sicherheit verwendet.
Gründe für die Verwendung von Message Security
In der message-level Sicherheit, der Sicherheit von Informationen wird gekapselt in der Nachricht. Sichern Sie die message mit dem message-level security statt (transport level security) hat die folgenden Vorteile:
• Ende-zu-Ende-Sicherheit. Transport-Sicherheit, wie Secure Sockets Layer (SSL) sichert nur Nachrichten, wenn die Kommunikation Punkt-zu-Punkt. Wenn die Nachricht weitergeleitet wird, um einen oder mehrere SOAP-intermediäre (beispielsweise router) vor erreichen der ultimative Empfänger, die Nachricht an sich ist nicht geschützt ist, wenn ein Vermittler liest aus dem Draht. Darüber hinaus werden die client-Authentifizierungsinformationen zu dem nur die ersten Vermittler und müssen erneut übertragen, um die ultimative Empfänger in out-of-band-Mode, wenn nötig. Dies gilt auch dann, wenn die gesamte Strecke verwendet SSL-Sicherheit zwischen den einzelnen hops. Da die message-Sicherheit arbeitet direkt mit der Nachricht und sichert die XML in der it, die Sicherheit bleibt mit der Meldung unabhängig davon, wie viele Zwischenhändler beteiligt sind, bevor der ultimative Empfänger. Dies ermöglicht eine echte end-to-end-security-Szenario.
• Erhöhte Flexibilität. Teile der Nachricht, statt die gesamte Nachricht kann signiert oder verschlüsselt werden. Dies bedeutet, dass die Vermittler können die Teile der Nachricht, die für Sie bestimmt sind. Wenn der Absender muss ein Teil der Informationen in der Nachricht sichtbar an den Vermittler, sondern will, um sicherzustellen, dass es nicht manipuliert wurde, kann es nur Unterschreiben es, lassen Sie es aber unverschlüsselt. Seit der Unterzeichnung ist Teil der Nachricht, den ultimate-Empfänger kann überprüfen, dass die Informationen in die Nachricht empfangen wurde, intakt. Ein Szenario könnte eine SOAP-Vermittler-Dienst, der Routen-Nachricht nach der Aktion-header-Wert. Standardmäßig WCF nicht verschlüsseln die Aktion Wert, aber es Anzeichen, wenn die message-Sicherheit verwendet wird. Also, diese information ist für alle Vermittler, aber niemand kann es ändern.
• Unterstützung für mehrere Transporte. Senden Sie gesicherte Nachrichten über viele verschiedene Transporte, wie named pipes und TCP, die zimmerreserviereung, ohne das Vertrauen auf das Protokoll für die Sicherheit. Mit dem transport-level security, die Sicherheit von Informationen bezieht sich auf ein einzelnes insbesondere transport-Verbindung und nicht den Inhalt der Nachricht selbst. Die Message-Sicherheit macht die Sicherheit der Nachricht unabhängig davon, welches Transportmittel Sie verwenden zum übertragen der Nachricht, und der Sicherheitskontext ist direkt eingebettet in der message.
• Unterstützung für eine Breite Reihe von Anmeldeinformationen und Ansprüche. Die Nachricht Sicherheit basiert auf dem WS-Security-Spezifikation, die bietet ein erweiterbares framework in der Lage die übertragung jeder Art von Forderung innerhalb der SOAP-Nachricht. Im Gegensatz zu transport-Sicherheit, der Satz von Authentifizierungs-Mechanismen, oder Forderungen, die Sie verwenden können, ist begrenzt und nicht durch die transport-Funktionen. WCF-message-security umfasst mehrere Arten von Authentifizierung und behaupten, übertragung und Erweiterung auf andere Arten als notwendig. Aus diesen Gründen, zum Beispiel, einen Verbund-Anmeldeinformationen Szenario ist nicht möglich, ohne die message-Sicherheit. Für mehr Informationen über federation-Szenarien WCF unterstützt, sehen Bund und Ausgestellte Token.
Irreführend. Ein Netzwerk-router oder-switch (OSI-Layer 2 und 3) haben keinen Zugriff auf den Inhalt der Nachricht, wenn die Verschlüsselung mit Transport layer security (Server-side-SSL-Zertifikat), da die service-Seite SSL-Zertifikat wird benötigt, um die Nachricht zu entschlüsseln. Transport layer security schützt die Nachrichten zwischen dem client und dem beabsichtigten Ziel-IP-Adresse, da nur die Ziel-service-provider ist davon auszugehen, dass die SSL-eigenes Zertifikat, das erforderlich ist, um die Nachricht zu entschlüsseln. Eine SOAP-Vermittler würde nur in der Lage sein, um den Inhalt Lesen, wenn der SOAP-intermediäre (z.B. ESB) war in der Tat die beabsichtigte Botschaft Ziel, dass tatsächlich stellt der verschlüsselte transport-Kanal mit dem client, gewährleisten einen sicheren Kanal vom client zum server unabhängig von der Anzahl der Netzwerk-hops, Router und switches, etc (OSI-Schichten 2 und 3).
Message-Level security hinzufügen würde, die Sicherheit der Botschaft und konnte verschlüsseln von teilen einer Nachricht, wenn eine middleware, ESB (soll eine SOAP-Vermittler) benötigt, um zu Lesen, Teile einer message routing-Entscheidungen treffen (Content Based Routing), aber sollten nicht in der Lage zu Lesen, andere Teile einer Nachricht sollte nur zugegriffen werden, indem nachgelagerte Systeme.
Transport verwenden, sichern Sie den Kanal, den Sie verwenden, und mit der Nachricht die Nachricht (Inhalt), die Sie senden.