Вы всегда можете получить полный DN пользователя, который вошел в систему, используя
UserPrincipal up = UserPrincipal.FindByIdentity(pc, IdentityType.SamAccountName, userName);
up.UserPrincipalName // shows user@domain.com
up.DistinguishedName // shows CN=Surname,OU=group,DC=domain,DC=com
up.SamAccountName // shows login name
. Используйте up.SamAccountName для последующих вызовов ValidateCredentials, включая имя домена - вы не можете иметь 2 пользователей, которыевойдите в систему с тем же именем sAMAccountName!
DistinguishedName определенно покажет вам, какой пользователь JohnSmith вошел в систему.