So verwenden Sie LogonUser ordnungsgemäß, um die Identität eines Domänenbenutzers vom Arbeitsgruppenclient anzunehmen
ASP.NET Identität gegen eine domain, die auf VMWare
Diese Frage ist, was ich Fragen, aber die Antwort nicht geben details, wie die _token abgeleitet ist. Es scheint nur WindowsIdentity.GetCurrent().Token
es gibt also kein Identitätswechsel passiert.
Kann ich einen Benutzer zu imitieren auf einer anderen Active Directory-Domäne .NET?
Diese Frage widersprüchliche Antworten, mit dem akzeptiert eine Haltung-ein Kommentar "ich fange an zu vermuten, dass mein problem liegt woanders." Nicht hilfreich.
LogonUser funktioniert nur für meine domain
Diese nächste Frage scheint zu implizieren, es ist nicht möglich, aber es befasst sich mit 2 domains, so bin ich nicht sicher, ob es relevant ist.
Meine eigentliche Frage ist:
- Ist es möglich? Und wenn ja,
- Wie? oder Wo habe ich bloß falsch gemacht?
Was ich bisher versucht habe ist, den code von http://msdn.microsoft.com/en-us/library/chf6fbt4%28v=VS.80%29.aspx
bool returnValue = LogonUser(user, domain, password,
LOGON32_LOGON_NETWORK, LOGON32_PROVIDER_DEFAULT,
ref tokenHandle);
//after this point, returnValue = false
Win32-Fehler ist
Anmeldung fehlgeschlagen: unbekannter Benutzername oder Falsches Kennwort
InformationsquelleAutor der Frage RichardTheKiwi | 2011-02-16
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sehr wenige Beiträge vorschlagen, mit
LOGON_TYPE_NEW_CREDENTIALS
stattLOGON_TYPE_NETWORK
oderLOGON_TYPE_INTERACTIVE
. Ich hatte ein Identitätswechsel Problem mit einer Maschine mit einer Domäne verbunden ist und einer nicht, und das Festnetz.Das Letzte code-snippet in dieser Beitrag deutet darauf hin, dass die Identität über einen Wald macht Arbeit, aber es hat nicht speziell etwas darüber gesagt, dass Vertrauen aufgebaut wird. Dies könnte also einen Versuch Wert:
MSDN sagt , dass
LOGON_TYPE_NEW_CREDENTIALS
funktioniert nur, wennLOGON32_PROVIDER_WINNT50
.InformationsquelleAutor der Antwort takrl
dies funktioniert für mich, voll funktionsfähig Beispiel (ich wünschte, mehr Menschen würden dies tun):
InformationsquelleAutor der Antwort JJ_Coder4Hire
Habe ich schon erfolgreich auf die Identität von Benutzern in einer anderen Domäne, aber nur mit eine Vertrauensstellung zwischen 2 Domänen.
InformationsquelleAutor der Antwort Jason
Ich hatte das gleiche problem. Weiß nicht, ob Sie gelöst habe oder nicht, aber was ich wirklich versuche zu tun, war Zugriff auf ein Netzwerk-share mit AD-Anmeldeinformationen.
WNetAddConnection2()
ist, was Sie verwenden müssen, in diesem Fall.InformationsquelleAutor der Antwort Conrad
Invalid login/password, könnte auch im Zusammenhang mit Themen in Ihrem DNS-server - das ist, was mir passiert ist und kostet mich gut 5 Stunden meines Lebens. Sehen Sie, wenn Sie können, geben Sie die ip-Adresse statt über die domain-Namen.
InformationsquelleAutor der Antwort Dan
Es ist besser ein SecureString:
Und:
Funktion definition:
InformationsquelleAutor der Antwort Tovich