Мне нужен способ проверки пары пользователь / пароль для родного c ++ в Windows.Входные данные - это имя пользователя и пароль, пользователь может быть в формате DOMAIN \ user.
В основном мне нужно написать функцию, которая: Если user / password является действительной локальной учетной записью, возвращает true.(часть 1) Если имя пользователя и пароль действительны в указанном домене, верните также true.(часть 2), иначе возвращаем false.
Использование KB180548 Я решил (часть 1) (но мне также пришлось проверить, является ли имя пользователя допустимым, поскольку происходит сбой для пользователей с пустымпароли - уродливый обходной путь, но он работает)
Однако для любого домена, кроме ".", приведенный выше пример кода КБ работает (неправильно) для любой пары пользователь / пароль.
Я пытался использоватьldap_bind_s, но это удается для неправильных пар пользователь / пароль (страшная гостевая учетная запись?).Также за "."домен, он не работает для действительных пользователей / паролей с LDAP_SERVER_DOWN (может быть, потому что локальный хост не является контроллером домена?)
Может быть, некоторые из этих понятий мне неясны.Я надеюсь, что по крайней мере моя проблема объяснена ясно.Я не застрял ни в одном методе, так как log-файл может быть реализован только в собственном коде C ++.
Этот вопрос C #: Как проверить учетные данные домена? , кажется, понял этовне (за исключением того, что нет принятого ответа).Увы, это в C #.
Редактировать: Давай, переполнение стека, ты никогда не подводил меня раньше ...