Soyez le premier à donner votre avis sur cette source.
Snippet vu 11 961 fois - Téléchargée 37 fois
//Nom du programme TestLogonUserA #include <windows.h> #include <stdio.h> int main(int argc, char **argv) { HANDLE token; BOOL resultat; // Vérification de la syntaxe de la commande if (argc != 3) { printf("\nUsage commande : TestLogonUserA NOM_UTILISATEUR MOT_DE_PASSE\n"); return -1; } // Appel de la fonction de test de la connection // la donnée token ne sert qu'à garder en mémoire l'instance de la connection printf("Appel fonction LongonUserA\n"); resultat = LogonUserA(argv[1], NULL, argv[2], LOGON32_LOGON_INTERACTIVE, LOGON32_PROVIDER_DEFAULT, &token); if (resultat) printf("\tConnection reussie\n"); else printf("\tConnection refusee\n"); printf("Appel termine\n"); CloseHandle(token); return 0; }
Commentaires
Shell
Naturellement, on peut dans un programme mettre en place des droits d'accès mais pas de les inventer : si tu n'es pas admin, tu ne pourras l'être depuis un programme (sauf s'il est exécuter sous un autre login).
Euh .. pas clair tout ça !
En gros, la fonction LogonUserA ne fonctionne pas lorsque l'utilisateur n'a pas des droits suffisants.
Il y a quelques années, j'avais fait un activeX pour ASP (Web) dont une des tâches était d'identifier un utilisateur. Le soucis immédiat est que le serveur web (IIS en l'occurence) exécutait les scripts sous le login nobody (ou équivalent) donc sans droits particulier. Le résultat est que personne ne pouvait se connecter. Un changement de login (possible sur un script particulier .. enfin, la configuration n'est pas intuitive :) a résolu le problème car ce nouveau login était "Utilisateur Avec Pouvoir".
Je dis ça en gros car je ne me souviens plus vraiment du droit exact à utiliser :)
Voilà, c'est bien de mettre ce code car on ne connait jamais assez les API Win32 :)))
Not a bug, it's a feature !
Mick
J'ai les privilèges ( lancé depuis le compte Administrateur ). Pourriez vous m'aider please !!!
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.