Ich habe folgendes Problem:
Ich habe einen Windows Service Implementiert welcher auf den Rechner über WCF ansprechbar ist.
Da ich aber jetzt schon weiß das es nur einen bestimmten Client gibt der diesen Service ansprechen soll wollte ich wissen:
gibt es eine möglichkeit von Anfang an auszuschließen das sich ein anderer Client verbinden kann?
Dies sollte aus Sicherheitsgründen schon passieren bevor Nachrichten verarbeitet werden.
möglicherweise über die GUID des Programmes oder so ?
(Der Client befindet sich auf dem selben Rechner.)
lg
Hi Sunny20,
willkommen im Forum.
Wenn du schreibst Client, meinst du dann nur ein bestimmter Benutzer oder nur ein bestimmtes Programm?
lg
L.G.
"Das Problem kennen ist wichtiger, als die Lösung zu finden, denn die genaue Darstellung des Problems führt automatisch zur richtigen Lösung." Albert Einstein
In WCF kannst du meines Wissens keine Diskriminierung machen, welches Programm sich mit dem Service verbindet. Du kannst dich zwar als Host und User authentifizieren, aber das geht dann von jedem Client (=Programm) aus, für die der Service erreichbar sein soll.
Ich weiss nicht wie sicher das Ganze werden muss, aber du könntest deinem Service z.B. eine Methode Connect offrieren, die ein Client aufrufen muss, bevor er loslegen kann andere Service Methoden aufzurufen. Der Connect Methode muss z.B. ein Passwort übergeben werden, das dann wiederum nur dein Clientprogramm kennen darf.
Das wird nicht funktionieren.
Ein Programm schickt immer gewissen Daten an ein Programm
Der Server kann nicht unterscheiden ob er Daten von Prog 1 oder Prog 2 bekommt.
Prog 1 (orginale richtige) schickt 1234567
Prog 2 (das Böse Programm) schickt 1234567
beides sieht gleich aus, es ist kein Unterschied auszumachen.
"Das Problem kennen ist wichtiger, als die Lösung zu finden, denn die genaue Darstellung des Problems führt automatisch zur richtigen Lösung." Albert Einstein