techno_man
Messages postés10Date d'inscriptiondimanche 11 janvier 2004StatutMembreDernière intervention17 juillet 2008
-
27 juin 2008 à 10:35
BastienL21
Messages postés172Date d'inscriptiondimanche 10 décembre 2000StatutMembreDernière intervention12 février 2009
-
27 juin 2008 à 12:22
Bonjour à tous,
Je dois réaliser une appli en C/C++ dans laquelle l'utilisateur doit saisir son login/mdp AD et, le programme doit vérifier ensuite qu'ils correspondent bien à ceux de l'annuaire (une authentification en fait).
Je dois également tester l'appartenance de l'utilisateur à un groupe.
Malheuresement, mes connaissances sont plutôt limitées et mes recherches n'ont rien donné.
Auriez-vous une idée (surtout pour le 1er point) ? Je seche un peu ...
BastienL21
Messages postés172Date d'inscriptiondimanche 10 décembre 2000StatutMembreDernière intervention12 février 20092 27 juin 2008 à 12:22
Slt,
Il faudrait que tu fasse soit if( mdp_predefini == mdp_Entre ) mais dans ce cas le nombre d'utilisateur et leurs mot de passe est prédéfini à l'avance.
Sinon voici un extrait de code mais les données peuvent-être lu dans le fichier dans le-quel il est stocké (c'est un extrait (très simplifié) d'un code de "mini faut OS" lol que j'ai créé et cette ârtie me sert à l'identification des users (Je mettrais sûrement quand j'aurais le tps de le commenter et de le "nettoyer" sur CS)).
fichier = NULL;//Initialise
fichier = fopen("Destination\\NomDuFichier.Extension", "a+");//ouvre
if (fichier != NULL)//ouverture OK
{
fscanf(fichier, "%[^\n]\n", Variable_De_Stockage_du_mdp_ou_user); //%[^\n]\n==>Jusqu'au premier retour à la ligne //récupère le mdp ou l'user contenu dans le fichier
fclose(fichier);//Ferme le fichier
}
if(fichier == NULL)//Erreur d'ouverture
{
printf("ERREUR!");
}
printf("Mot de passe? ");
scanf("%s", Variable_Qui_stocke_le_mdp_ou_luser_Entrer");
if( Variable_De_Stockage_du_mdp_ou_user == Variable_Qui_stocke_le_mdp_ou_luser_Entrer )//Si le mdp ou l'user entré est bon
{
...
}
else
printf("Erreur d'identification");
>tu le fait deux fois de suite :
-1 pour l'user
-1 pour le mdp (avec if( Userpredef == user_entre))
Tu peux par exemple pour récupérer plusieur mdp et leur users :
fichier = NULL;
fichier = fopen("C:\\PROGRA~1\\BLos\\u4.dll", "a+");
if (fichier != NULL)
{
fscanf(fichier, "%[^\n]\n", u1);//u1 == le nom prédéfini de l'user n°1
fclose(fichier);
}
if(fichier == NULL)
printf("ERREUR!");
fscanf(fichier, "%[^\n]\n", u2);//u2 == le nom prédéfini de l'user n°2
fclose(fichier);
}
sleep(20);
printf(".");
if(fichier == NULL)
printf("ERREUR!");...Autant de fois que d'user
>on a récupéré les nom d'user et pareil avec les mots de passe
Cette technique va si il n'y a pas beaucoup d'utilisateur sinon tu devrais pouvoir le faire en nommant des fichiers par le nom de l'user et en comparant le nom entré avec les noms de fichiers contenus dans un dossier précis avec FindFirstFile() et FindNextFile() et si le nom existe, que le programme ouvre le fichier qui le porte et mette le mdp qui y serait préalablement mit, dans une variable et la comparerait avec le mdp que l'user aura entré.
Cordialement, B@stien.//@++
PS: C'est du C, pas ++