Aus Sicherheitsgründen möchten wir überprüfen, ob der aktuelle PC-Benutzer der tatsächlich angemeldete Benutzer ist. Dazu möchten wir, dass der Benutzer sein Kennwort erneut eingibt und seine Anmeldeinformationen mit der Domäne überprüft. Wie können wir das erreichen?Wie überprüft man, ob der aktuelle PC-Benutzer der aktuell angemeldete Benutzer ist?
Sofar haben wir versucht, dieses:
public static Boolean Authenticate(String password)
{
String user = WindowsIdentity.GetCurrent().Name;
using (PrincipalContext PrincipalContext = new PrincipalContext(ContextType.Domain, Environment.UserDomainName))
{
return PrincipalContext.ValidateCredentials(user, password);
}
}
Aber ein System.DirectoryServices.Protocols.LdapException
bekommen, auch die Environment.UserDomainName
off verlassen diese Ausnahme auslöst.
Wir haben auch versucht:
public static Boolean Authenticate(String password)
{
String user = WindowsIdentity.GetCurrent().Name;
using (PrincipalContext PrincipalContext = new PrincipalContext(ContextType.Machine))
{
return PrincipalContext.ValidateCredentials(user, password);
}
}
Aber das gibt auf jedem Passwort wahr.