Ich habe ein Problem beim Zugriff auf einen Webservice mit impersonate ohne einen angegebenen Benutzer.Identitätswechsel funktioniert nur, wenn ein Benutzer angegeben wird
Works: <identity impersonate="true" userName="DOMAIN\USERNAME" password="MyPassword" /
>
nicht
<identity impersonate="true" />
Während Debuggen ich unten den Code verwendet, funktioniert die richtige Domäne und Benutzername verifiy verwendet wurden, sind sie.
System.Security.Principal.WindowsIdentity.GetCurrent().Name;
ist hier mehr meiner web.config
<authentication mode="Windows" />
<identity impersonate="true" />
<authorization>
<allow users="*" />
<deny users="?"/>
</authorization>
Ich bin Anmeldung in der Eingabeaufforderung Bild unten
Irgendwelche Ideen, warum es funktioniert nur, wenn ich einen Benutzer in die angeben web.config? Ich melde mich mit dem gleichen Domain\Username
und Passwort, das ich in die <identity impersonate="true" userName="DOMAIN\USERNAME" password="MyPassword" /
>. Ich habe mit mehreren Konten versucht und sie alle arbeiten, wenn ich lege ihre Anmeldeinformationen in der web.config
aber keine Arbeit mit Identität gesetzt, wie <identity impersonate="true" />
und Protokollierung in
EDIT Der Remoteserver hat einen Fehler zurückgegeben:. (403) Verboten .
EDIT 2 Alles funktioniert gut, während die Fehlersuche und während der Dienst auf dem Server schlagen, die das IIS enthält es gehostet wird, ich mit mehreren Konten und sie alle Arbeiten versucht haben. Alles ist auf der gleichen Domain
Ist die anonyme Authentifizierung in IIS aktiviert? Versuchen Sie, diesen Code zu debuggen: 'System.Web.HttpContext.Current.User.Identity.Name' –
Anonymous ist derzeit in IIS deaktiviert – joetinger
Ich habe den vorgeschlagenen Code ausprobiert und erhalte den erwarteten DOMÄNE-Benutzernamen. – joetinger