2009-04-09 5 views
2

J'ai une application VC++ (6.0). Nous voulons utiliser l'authentification NTLM pour accéder à un serveur. Je demande l'URL, l'ID et le mot de passe et les envoie dans mon appel internetSession.GetHttpConnection, et si vous entrez le domaine \ id et le mot de passe, cela fonctionne très bien, en utilisant NTLM.Authentification NTLM avec GetHttpConnection

Nous souhaitons que les utilisateurs qui sont actuellement connectés sur le même domaine que le serveur n'aient pas à entrer leur ID et mot de passe. Comment faisons-nous cela? Je pense que cela a à voir avec "l'authentification passthrough" ou WindowsIdentity. Été googling pour cela, mais si quelqu'un a une réponse rapide, je l'apprécierais.

+0

Que voulez-vous dire par «accéder à un serveur»? Il ne semble pas que vous utilisiez NTLM dans votre cas de travail mais une authentification de base. NTLM est un challenge/response sur HTTP et fonctionne comme ceci: http://www.innovation.ch/personal/ronald/ntlm.html –

Répondre

1

Pouvez-vous utiliser WinHTTP au lieu de WinInet? Jetez un oeil à ce library qui encapsule WinHTTP. Je pense qu'il utilise WinHttpGetIEProxyConfigForCurrentUser() pour obtenir cette information pour vous. J'ai fait des demandes via un proxy Microsoft ISA configuré pour utiliser NTLM sans aucun problème, donc je suppose qu'il s'identifierait comme vous contre un autre serveur avec NTLM.

Questions connexes