Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
4744 connectés 

  FORUM HardWare.fr
  Programmation
  Delphi/Pascal

  Controleur de domaine

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Controleur de domaine

n°483919
Tetranos
Posté le 11-08-2003 à 18:53:14  profilanswer
 

Je dévellope actuellement un intranet pour une entreprise, et pour ne pas avoir à gérer des utilisateurs et des mots de passe, je souhaiterai faire en sorte que Windows s'en chage pour moi. L'idée est que l'utilisateur en arrivant sur l'intranet tape son login NT et son mot de passe, et ensuite l'intranet fait une requête auprés du contrôleur de domaine pour savoir si oui ou non cet utilisateur est connu.
C'est pour ça que j'ai besoin de vous, comment intéroger un contrôleur de domaine ?
De préférence en Delphi, mais si vous avez des pistes en C, je prends aussi...
 
Merci

mood
Publicité
Posté le 11-08-2003 à 18:53:14  profilanswer
 

n°494590
lung
Posté le 22-08-2003 à 16:38:03  profilanswer
 

J'utilise un code de ce genre pour récupérer la liste des utilisateurs définis sur un poste ou sur un serveur :
 

Code :
  1. type
  2.    USER_INFO_0 = record
  3.       usri0_name: PWideChar;
  4.    end;
  5. ...
  6. implementation
  7. ...
  8. function NetUserEnum(Server: PWideChar; Level: DWORD; Filter: DWORD; var Bufptr: Pointer; PrefMaxLen: DWORD; var EntriesRead: DWORD; var TotalEntries: DWORD; Resume_Handle: PDWORD): Integer; stdcall; external 'netapi32.dll';
  9. procedure NetApiBufferFree(Buffer : Pointer); stdcall; external 'netapi32.dll';
  10. procedure TMainForm.GetListeUtilisateur;
  11. var
  12.    FIni: TIniFile;
  13.    bufptr: ^USER_INFO_0;
  14.    server: WideString;
  15.    sts: integer;
  16.    maxlen: DWORD;
  17.    entread, totalent, rhandle: DWORD;
  18.    i: integer;
  19. begin
  20.    //.Lecture du fichier INI.
  21.    FIni := TIniFile.Create(ExtractFilePath(Application.ExeName) + 'TransfertHMY-Client.ini');
  22.    if FIni.ValueExists('Client', 'NomServeur') then
  23.       server := FIni.ReadString('Client', 'NomServeur', '')
  24.    else
  25.       server := '';   //chaine vide si enum users poste local
  26.                       //sinon :  donner le nom du serveur :  \\SEVEUR
  27.    FIni.Free;
  28.    maxlen := $FFFFFFFF;
  29.    entread := 0;
  30.    totalent := 0;
  31.    rhandle := 0;
  32.    bufptr := nil;
  33.    repeat
  34.       sts := NetUserEnum(PWideChar(Server), 0, 2, Pointer(bufptr), maxlen, entread, totalent, PDWORD(rhandle));
  35.       FormDestinataire.ListBoxContacts.Items.Clear;
  36.       if bufptr <> nil then
  37.       begin
  38.          for i := 0 to entread - 1 do
  39.          begin
  40.             FormDestinataire.ListBoxContacts.Items.Add(AnsiUpperCase(WideCharToString(bufptr^.usri0_name)));
  41. //            FormDestinataire.ListBoxContacts.Items.Add(AnsiUpperCase(WideCharToString(bufptr^.usri2_full_name)));
  42.             inc(bufptr);
  43.          end;
  44.       end;
  45.    until (sts <> 0) or (bufptr = nil) or (entread = totalent);
  46.    if bufptr <> nil then
  47.       NetApiBufferFree(bufptr);
  48. end;


 
Si ca peut t'aider ...
 
;)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Delphi/Pascal

  Controleur de domaine

 

Sujets relatifs
Cookies accessibles n'importe où au sein d'un domaine [résolu]Récuperer le domaine en cours ( - Job's Done - )
Transfert invisible (nom de domaine)Cookie créé en local qui doit être lu ensuite sur un domaine précis
Bonjour! Comment "activer" un domaine après création du repertoire.?[Résolu] [POO] Design-Patterns, Modèle Vue Contrôleur...
[JS] savoir dans quel domaine on est ?Comment récupérer la liste des utilisateurs d'un domaine Windows ?
[http] comment se fait une requette GET poru une machine d un domaine?[PHP] $HTTP_SERVER_VARS, récupération du nom de domaine ? (hostname)
Plus de sujets relatifs à : Controleur de domaine


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)