Die System.Security.Principal.WindowsIdentity.Impersonate-Funktion nimmt einen System.intptr-Parameter, der in meiner Situation (mit meinem begrenzten Verständnis) schrecklich nutzlos scheint.Ist es möglich, die Funktion "impersonate" mit einer Zeichenfolge (Benutzername) anstelle von intptr zu verwenden?
Ich entwickle eine Intranet-Anwendung, die integrierte Sicherheit verwendet, um Benutzer Seite für Seite gegen eine Rolle zu autorisieren, die mit ihrer Windows-Identität verknüpft ist. Ich habe keine Passwörter oder ähnliches. Einfach ein Windows-Benutzername. Wie könnte ich zu Testzwecken möglicherweise einen Windows-Benutzer basierend auf seinem Benutzernamen imitieren? Die "Impersonate" -Methode sprang bei mir als offensichtlich heraus, aber sie benötigt einen unerwarteten Parameter.
Vielen Dank im Voraus :)
Ich bin nicht sicher, dass diese Lösung unter den gegebenen Umständen möglich wäre. Da ich spät in den Entwicklungszyklus eintrat, war ich gezwungen, das System zu umgehen, um einen Wechsel der Tabellen und der Infrastruktur zu vermeiden. Ich verwende das WindowsIdentity.getCurrent() -Objekt und vergleiche diese Zeichenfolge mit einer "Username" -Spalte. Die Tabelle kann außer ihrem Benutzernamen keine Informationen über das Windows-Konto des Benutzers speichern. – Chris