1

Ich entwickelte einen Remoting-Dienst (Hosting .NET-Typ in der ISS). IIS ist für die Verwendung von "Integrated Windows Auth" konfiguriert.Der Remote-Server hat einen Fehler zurückgegeben: (401) Nicht autorisiert in .NET Remoting

Es funktioniert perfekt, wenn ich Unit-Test, den Dienst auf dem „localhost“ ausführen (der Code unten ist der Code, den ich für den Test verwenden), aber nachdem ich einen Dienst zu dem Testserver (die andere Domäne in einer anderen im Einsatz), es begann, eine "System.Net.WebException werfen: Der Remote-Server gab einen Fehler zurück: (401) Nicht autorisiert." Ausnahme.

string url = string.Concat(@"http://", serverName, "/", ServiceName); 

IDictionary props = new Hashtable(); 
props["useDefaultCredentials"] = true; 
props["useAuthenticatedConnectionSharing"] = true; 

BinaryServerFormatterSinkProvider srv = new BinaryServerFormatterSinkProvider(); 
BinaryClientFormatterSinkProvider clnt = new BinaryClientFormatterSinkProvider(); 
this.channel = new HttpChannel(props, clnt, srv); 

ChannelServices.RegisterChannel(this.channel, false); 

IMyService service = Activator.GetObject(typeof(IMyService), url) as IMyService; 

service.GetData();// this error returns "System.Net.WebException: The remote server returned an error: (401) Unauthorized." exception. 

Was könnte das Problem sein? Ist es Domain-bezogen? Vielleicht hat es etwas mit einer Konfiguration des Standard-Web-Proxy zu tun?

Antwort

0

Welche Anmeldeinformationen verwenden Sie? Verwendet das System die Windows-Authentifizierung? Wenn ja, akzeptiert die andere Domain Nutzer Ihrer Domain?

Möglicherweise müssen Sie eine Vertrauensstellung zwischen Domänen definieren oder sich mit verschiedenen und geeigneten Anmeldeinformationen für die Domäne des Servers anmelden.