2016-10-29 4 views
0

Angenommen, ich habe WCF-Dienste, die irgendwo gehostet werden. Auch gibt es zwei Anwendungen APP1 und APP2. Was ich will ist, dass nur APP2 meine WCF-Dienst, nicht APP1 verbrauchen kann. Selbst APP1 hat noch eine Service-URL und Endpunkte, aber es sollte in der Lage sein, jede Methode des Dienstes aufzurufen.Wie können wir einen WCF-Dienst für eine Anwendung erstellen?

Sagen, in meinem Dienst gibt es eine Methode Methode1. Also, wenn APP2 es aufruft, sollte es das Ergebnis zurückgeben. Aber wenn APP1 es aufruft, sollte es eine Ausnahme oder eine Validierungsnachricht erhalten.

Ich dachte über Identitätswechsel nach, aber wenn APP1 das Passwort bekommt, wird es auch in der Lage sein, das Ergebnis von Methode1 zu holen.

Ist es in WCF möglich? Wenn ja, wie kann ich das umsetzen?

Antwort

0

Wie wäre es mit einem Authentifizierungsschlüssel im Request-Parameter Ihrer WCF-Methode? Sie definieren einen gültigen Schlüssel in der Konfigurationsdatei Ihres APP2 (derjenige, der das Ergebnis zurückgeben soll) und nicht in Ihrem APP1.

+0

Was, wenn jemand auch den gleichen Schlüssel in APP1 hinzugefügt hat, dann wird APP1 auch in der Lage sein, Daten vom Dienst zu bekommen. – sunil20000

+0

Ich nehme an, Sie wollten wsHttpBinding verwenden. –

+0

Nein, ich bin auf der Suche nach einer Lösung, die, wenn APP2 Service-Methode ruft, sollte es Daten zurückgeben, und wenn APP1 Service-Methode ruft, sollte es einige Validierung Nachricht zurückgeben. Hoffe, mir ist jetzt klar. – sunil20000

Verwandte Themen