2010-07-08 7 views
0

J'essaie actuellement d'authentifier les utilisateurs dans une application C++ dans Windows. J'ai besoin d'afficher une boîte de dialogue pour le nom d'utilisateur et mot de passe et de vérifier qu'ils sont un utilisateur authentifié sur la machine Windows. Y at-il des bibliothèques qui permettent cette fonctionnalité ou un bon moyen de s'y prendre?Authentification LDAP Windows en C++

+0

Que devez-vous faire? accéder à l'objet AD? part d'accès? accéder au site web? besoin de plus d'informations, ce que vous essayez de faire. En gros, kerberos/windows auth est pris en charge dans Windows – Baget

+0

J'essaie juste de vérifier si un utilisateur a un compte utilisateur Windows valide sur la machine avant de lui donner accès à certaines parties de mon application. Il peut s'agir de n'importe quel utilisateur de la machine, pas seulement du compte actuellement connecté. – thecaptain0220

Répondre

1

Probablement CredUIPromptForWindowsCredentials (voir http://msdn.microsoft.com/en-us/library/aa375178.aspx) ou vieux CredUIPromptForCredentials (voir http://msdn.microsoft.com/en-us/library/aa375177.aspx) pourrait résoudre votre problème?

MISE À JOUR: Une autre façon la plus ancienne d'authentifier un utilisateur est l'utilisation de SSPI. Cela n'aidera pas à afficher une boîte de dialogue, mais vous pouvez vous implémenter. Vous pouvez trouver un très ancien exemple de code (probablement le premier publié par Microsoft) ici http://support.microsoft.com/kb/180548.

Si vous souhaitez utiliser l'API LDAP (voir http://msdn.microsoft.com/en-us/library/aa366102.aspx), vous pouvez utiliser ldap_bind_s (voir http://msdn.microsoft.com/en-us/library/aa366156.aspx) pour vérifier l'authentification de l'utilisateur. Voir http://msdn.microsoft.com/en-us/library/aa366106.aspx comme un exemple de code (ce n'est pas exactement ce que vous voulez, mais vous pouvez comprendre comment ces API fonctionnent)