2009-03-20 10 views
1

Ich habe einen Windows-Dienst, der einen WCF-Dienst hostet, und einen Webdienst auf einem anderen Computer, der als Client fungiert. Ich habe die Nettobindung auf Transportsicherheit mit Windows-Authentifizierung eingestellt. Darf ich annehmen, dass der Windows-Benutzer, unter dem der Webservice ausgeführt wird, über die Berechtigung zum Zugriff auf den WCF-Dienst auf dem anderen Computer verfügen muss? Wenn der Webservice unter NetworkService läuft, kann ich ihn verwenden oder muss ich einen neuen Benutzer einrichten?Konfigurieren der Transportsicherheit für WCF

Antwort

3

Ja, Sie müssen einen anderen Benutzer einrichten. Der Netzwerkdienst ist ein lokaler Benutzer und nicht auf dem WCF-Hostcomputer vorhanden. (Gut, aber es hat ein anderes Passwort und wird nicht geteilt)

Sie haben ein paar Möglichkeiten - wenn beide Maschinen in der Domäne sind, können Sie den Webanwendungspool als Domänenbenutzer ausführen oder wenn Sie In einer Arbeitsgruppe können Sie auf beiden Rechnern die gleiche Benutzername/Passwort-Kombination erstellen und die Website so konfigurieren, dass sie unter diesem Benutzerkonto ausgeführt wird. In beiden Fällen müssen Sie die richtigen Berechtigungen auf das neue Konto zuweisen von

aspnet_regiis -ga MachineName\AccountName 

Ausgabe Wenn Sie in einer Domäne und Kerberos-Authentifizierung sind, dann werden Sie auch einen SPN für das neue Benutzerkonto einrichten müssen

setspn -A HTTP/webservername domain\customAccountName 
setspn -A HTTP/webservername.fullyqualifieddomainname domain\customAccountName 
+0

Was ist, wenn IIS nicht in einer Domäne ist, aber Windows-Dienst ist? – Kimi

1

Weitere Informationen zum Netzwerkdienst finden Sie unter http://msdn.microsoft.com/en-us/library/ms684272(VS.85).aspx. Was passiert ist, dass Ihr WCF-Client versucht, sich als Domäne \ Computername $ an dem Rechner zu authentifizieren, der den Dienst hostet. Ich persönlich bevorzuge eine spezifische Identität für Prüfungszwecke.

+0

Es ist besser, als Netzwerkdienst zu arbeiten, da keine Kennwörter im Netzwerk verwaltet werden müssen. Die Kontokennwörter für Computerkonten ändern sich alle 30 Tage. Kennwörter für Netzwerkkonten werden in der Regel unter Domänenrichtlinien gelöscht und müssen manuell geändert werden. –

Verwandte Themen