Les Snippets

Connexion

Savoir si l'utilisateur est administrateur

Niveau requis pour utiliser/comprendre cette source : 1 ( Débutant )
Créé le 05/05/2011 20:39:02 et initié par Philippe734 [Liste]
Date de mise à jour : 24/07/2012 12:18:16
Vue : 5376
Catégorie(s) : API
Langages dispo pour ce code :
- VB6, VBA
- C
- C



Langage : VB6 , VBA
Date ajout : 05/05/2011
Posté par Philippe734 [Liste]
' Dans les déclarations
Public Declare Function IsNTAdmin Lib "advpack.dll" (ByVal dwReserved As Long, ByRef lpdwReserved As Long) As Boolean
' Par exemple :
MsgBox "Etes-vous administrateur ? " & IsNTAdmin(0, 0), vbInformation


Remarque :
Source : all api guide
Langage : C
Date ajout : 21/07/2012
Posté par deck_bsd [Liste]
DateMAJ : 24/07/2012
BOOL __stdcall IsAdmin() {
   HANDLE hToken;
   DWORD dwGroups;     
   PTOKEN_GROUPS pGroups;     
   SID_IDENTIFIER_AUTHORITY NtAuthority = { SECURITY_NT_AUTHORITY };    
   PSID pAdministrators;     
  UINT i = 0;    
   if (OpenProcessToken(GetCurrentProcess(), TOKEN_QUERY, &hToken) == 0) {
   return FALSE;    
   }    
   GetTokenInformation(hToken, TokenGroups, NULL, 0, &dwGroups);    
   if (GetLastError() != ERROR_INSUFFICIENT_BUFFER)  {
    CloseHandle(hToken);        
    return FALSE;    
   }    
   pGroups = (PTOKEN_GROUPS)LocalAlloc(LMEM_FIXED, dwGroups);    
   if (pGroups == NULL)    {
   CloseHandle(hToken);         
   return FALSE;     
   }     
   if (GetTokenInformation(hToken, TokenGroups, pGroups, dwGroups, &dwGroups) == 0)   {
    CloseHandle(hToken);         
    LocalFree(pGroups);         
    return FALSE;     
    }    
    if (AllocateAndInitializeSid(&NtAuthority, 2, SECURITY_BUILTIN_DOMAIN_RID, DOMAIN_ALIAS_RID_ADMINS, 0, 0, 0, 0, 0, 0, &pAdministrators) == 0)      {
     CloseHandle(hToken);        
     LocalFree(pGroups);        
     return FALSE;     
    }     
    if (IsValidSid(pAdministrators) == 0)      {
     CloseHandle(hToken);        
     LocalFree(pGroups);         
     FreeSid(pAdministrators);        
     return FALSE;     
    }    
    while (i < pGroups->GroupCount)     {
       if (IsValidSid(pGroups->Groups[i].Sid) != 0 && EqualSid(pGroups->Groups[i].Sid, pAdministrators) != 0)         {
       CloseHandle(hToken);            
       LocalFree(pGroups);            
       FreeSid(pAdministrators);             
       return TRUE;         
       }        
        ++i;     
     }      
     CloseHandle(hToken);    
      LocalFree(pGroups);     
     FreeSid(pAdministrators);    
      return FALSE;  
}
Remarque :
Code original de Nebula:
http://www.cppfrance.com/code.aspx?ID=28093
C/Win32 ne pas oublier l'include de windows.h ( #include  )
Langage : C
Date ajout : 15/12/2012
Posté par Twinuts [Liste]


_Bool isAdmin() {
  return getuid() == 0;
}

Remarque :
Une des façons les plus simple de le tester sous linux.

Snippets en rapport avec : Droits, Admin, Isntadmin, Administrator



Codes sources en rapport avec : Droits, Admin, Isntadmin, Administrator

{Visual Basic, VB6, VB.NET, VB 2005} RUNAS (EXÉCUTER EN TANT QUE...)
Application qui sert à exécuter un programme sous un utilisateur différent de l'utilisateur en cours...

{JAVA / J2EE} GESTION DES DROITS D'AFFICHAGE D'UN ÉCRAN POUR TOUT TYPE D'APPLICATION
Cette source définit un ensemble de classes qui permettent de gérer la connexion d'un utilisateur à ...

{PHP} EL COYOTOS LIVRE D'OR PHP 5
livre d'or PHP 5 ADMINISTRATION : 1. Sécurisée par sessions. Login + mot de passe changeablent...

{PHP} PROTÉGER UNE PAGE PAR UN MOT DE PASSE SANS COOKIES
Grâce aux comparaisons d'ip (admin et visiteur) et mot de passe. La connexion sera automatique à mo...

{Visual Basic, VB6, VB.NET, VB 2005} MOT DE PASS AVEC POSSIBILITÉ DE MULTIUSER
Protection d'une application avec mot de pass login, avec possibilité de créer plusieurs admin et pl...

{Visual Basic, VB6, VB.NET, VB 2005} INSTALLER UN PROGRAMME(MSI) EN TANT QU'ADMINISTRATEUR
Exemple d'utilisation: SoftwareUpdater permet à un utilisateur standard de sélectionner à partir d'...

{Delphi} UAC (USER ACCOUNT CONTROL) - EXÉCUTER UNE APPLICATION EN TANT QU'ADMINISTRATEUR SOUS WINDOWS VISTA
L'UAC (User Account Control) est une protection inhérente à Windows Vista, permettant de protéger le...

{PHP} SQUELETTE DE GESTION DES DROITS
Ca faisait longtemps que je n'avais pas posté quelque chose...alors zou... Ce code est plutôt un pr...

{Delphi} TRUC UTILE POUR PROTEGER SES DROITS D'AUTEUR EN DELPHI
Truc utile pour proteger ses droits d'auteur J'ai recupere les codes de certains d'entre vous pour ...

{PHP} CLASSE CHMOD
cette classe peut vous etre d'une tres grande utilité lors de l'upload de vos fichiers, ou des envet...