我需要一种验证Windows平台上本地C++用户/密码对的方法。
输入为用户和密码,用户可以是DOMAIN\user格式。
基本上,我需要编写一个函数: 如果用户/密码是有效的本地帐户,则返回true(第1部分) 如果用户/密码在所给域中有效,则也返回true(第2部分) 否则返回false。
使用 KB180548 我解决了(第1部分)(但我还必须检查用户名是否为有效用户,因为对于空密码的用户失败 - 不太好的解决方法,但它有效)。
然而,对于除“。”之外的任何域,上述KB示例代码对于任何用户/密码对都有效(但结果不正确)。
我已尝试使用ldap_bind_s,但它对于不正确的用户/密码对成功(可怕的访客账户?)。 此外,对于“.”域,它将对有效用户/密码失败,并显示LDAP_SERVER_DOWN(可能是因为本地主机不是域控制器?)
可能有些概念对我来说不清楚。 我希望至少我的问题能够清楚地解释。 只要它可以在C++本地代码中实现,我就不会困住在任何方法上。
基本上,我需要编写一个函数: 如果用户/密码是有效的本地帐户,则返回true(第1部分) 如果用户/密码在所给域中有效,则也返回true(第2部分) 否则返回false。
使用 KB180548 我解决了(第1部分)(但我还必须检查用户名是否为有效用户,因为对于空密码的用户失败 - 不太好的解决方法,但它有效)。
然而,对于除“。”之外的任何域,上述KB示例代码对于任何用户/密码对都有效(但结果不正确)。
我已尝试使用ldap_bind_s,但它对于不正确的用户/密码对成功(可怕的访客账户?)。 此外,对于“.”域,它将对有效用户/密码失败,并显示LDAP_SERVER_DOWN(可能是因为本地主机不是域控制器?)
可能有些概念对我来说不清楚。 我希望至少我的问题能够清楚地解释。 只要它可以在C++本地代码中实现,我就不会困住在任何方法上。
这个问题 C#: 如何验证域凭据? 似乎已经解决了(除了没有被接受的答案)。不幸的是,它是用C#编写的。
编辑:来吧,Stack Overflow,你从未让我失望过...