Intranet: Ungesicherter Client und Dienst
In der folgenden Darstellung sehen Sie einen einfachen Windows Communication Foundation (WCF)-Dienst, mit dem einer WCF-Anwendung Informationen in einem sicheren privaten Netzwerk zur Verfügung gestellt werden. Sicherheit ist nicht erforderlich, da die Daten eher unwichtig sind, das Netzwerk als grundsätzlich sicher eingestuft wird oder Sicherheit durch eine Ebene unterhalb der WCF-Infrastruktur bereitgestellt wird.
Merkmal | Beschreibung |
---|---|
Sicherheitsmodus |
Kein |
Transport |
TCP |
Bindung |
|
Interoperabilität |
nur WCF |
Authentifizierung |
Keine (None) |
Integrität |
Keine (None) |
Vertraulichkeit |
Keine (None) |
Dienst
Der folgende Code und die Konfiguration werden unabhängig voneinander ausgeführt. Führen Sie einen der folgenden Schritte aus:
- Erstellen Sie einen separaten Dienst, indem Sie den Code ohne Konfiguration verwenden.
- Erstellen Sie mit der angegebenen Konfiguration einen Dienst, aber definieren Sie keine Endpunkte.
Code
Im folgenden Code wird gezeigt, wie ein Endpunkt ohne Sicherheit erstellt wird:
Konfiguration
Mit dem folgenden Code wird derselbe Endpunkt mithilfe von Konfiguration eingerichtet:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.serviceModel>
<behaviors />
<services>
<service behaviorConfiguration=""
name="ServiceModel.Calculator">
<endpoint address="net.tcp://localhost:8008/Calculator"
binding="netTcpBinding"
bindingConfiguration="tcp_Unsecured"
name="netTcp_ICalculator"
contract="ServiceModel.ICalculator" />
</service>
</services>
<bindings>
<netTcpBinding>
<binding name="tcp_Unsecured">
<security mode="None" />
</binding>
</netTcpBinding>
</bindings>
<client />
</system.serviceModel>
</configuration>
Client
Der folgende Code und die folgende Konfiguration werden unabhängig voneinander ausgeführt. Führen Sie einen der folgenden Schritte aus:
- Erstellen Sie mit dem Code (und Clientcode) einen eigenständigen Client.
- Erstellen Sie einen Client, der keine Endpunktadressen definiert. Verwenden Sie stattdessen den Clientkonstruktor, der den Konfigurationsnamen als Argument verwendet. Beispiel:
Code
Im folgenden Code wird ein Basis-WCF-Client gezeigt, der mit dem TCP-Protokoll auf einen ungesicherten Endpunkt zugreift.
Konfiguration
Der folgende Konfigurationscode gilt für den Client:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.serviceModel>
<bindings>
<netTcpBinding>
<binding name="NetTcpBinding_ICalculator" >
<security mode="None">
</security>
</binding>
</netTcpBinding>
</bindings>
<client>
<endpoint address="net.tcp://machineName:8008/Calculator "
binding="netTcpBinding"
bindingConfiguration="NetTcpBinding_ICalculator"
contract="ICalculator"
name="NetTcpBinding_ICalculator" />
</client>
</system.serviceModel>
</configuration>