Fonction LookupAccountSidA (winbase.h)
La fonction LookupAccountSid
Syntaxe
BOOL LookupAccountSidA(
[in, optional] LPCSTR lpSystemName,
[in] PSID Sid,
[out, optional] LPSTR Name,
[in, out] LPDWORD cchName,
[out, optional] LPSTR ReferencedDomainName,
[in, out] LPDWORD cchReferencedDomainName,
[out] PSID_NAME_USE peUse
);
Paramètres
[in, optional] lpSystemName
Pointeur vers une chaîne de caractèresnull
[in] Sid
Pointeur vers le SID à rechercher.
[out, optional] Name
Pointeur vers une mémoire tampon qui reçoit une chaîne null-terminated qui contient le nom du compte qui correspond au paramètre lpSid.
[in, out] cchName
Lors de l’entrée, spécifie la taille, dans mémoire tampon TCHAR, de la mémoire tampon lpName. Si la fonction échoue, car la mémoire tampon est trop petite ou si cchName est égal à zéro, cchName reçoit la taille de mémoire tampon requise, y compris la fin caractère null.
[out, optional] ReferencedDomainName
Pointeur vers une mémoire tampon qui reçoit une chaîne null-terminated qui contient le nom du domaine où le nom du compte a été trouvé.
Sur un serveur, le nom de domaine retourné pour la plupart des comptes dans la base de données de sécurité de l’ordinateur local est le nom du domaine pour lequel le serveur est un contrôleur de domaine.
Sur une station de travail, le nom de domaine retourné pour la plupart des comptes dans la base de données de sécurité de l’ordinateur local est le nom de l’ordinateur depuis le dernier démarrage du système (les barres obliques inverses sont exclues). Si le nom de l’ordinateur change, l’ancien nom continue d’être retourné en tant que nom de domaine jusqu’à ce que le système soit redémarré.
Certains comptes sont prédéfinis par le système. Le nom de domaine retourné pour ces comptes est BUILTIN.
[in, out] cchReferencedDomainName
Lors de l’entrée, spécifie la taille, dans
[out] peUse
Pointeur vers une variable qui reçoit une valeur SID_NAME_USE qui indique le type du compte.
Valeur de retour
Si la fonction réussit, la fonction retourne une valeur différente de zéro.
Si la fonction échoue, elle retourne zéro. Pour obtenir des informations d’erreur étendues, appelez GetLastError.
Remarques
La fonction LookupAccountSid tente de trouver un nom pour le SID spécifié en vérifiant d’abord une liste de SID connus. Si le SID fourni ne correspond pas à un SID bien connu, la fonction vérifie les comptes locaux intégrés et définis par l’administration. Ensuite, la fonction vérifie le domaine principal. identificateurs de sécurité non reconnus par le domaine principal sont vérifiés par rapport aux domaines approuvés qui correspondent à leurs préfixes SID.
Si la fonction ne trouve pas de nom de compte pour le SID, GetLastError retourne ERROR_NONE_MAPPED. Cela peut se produire si un délai d’attente réseau empêche la fonction de trouver le nom. Il se produit également pour les SID qui n’ont aucun nom de compte correspondant, tel qu’un SID d’ouverture de session qui identifie une session d’ouverture de session .
En plus de rechercher des SID pour les comptes locaux, les comptes de domaine local et les comptes de domaine approuvés explicitement, LookupAccountSid pouvez rechercher des SID pour n’importe quel compte dans n’importe quel domaine de la forêt, y compris les SID qui apparaissent uniquement dans le champ SIDhistory d’un compte dans la forêt. Le champ SIDhistory stocke les anciens SID d’un compte qui a été déplacé d’un autre domaine. Pour rechercher un SID, LookupAccountSid interroge le catalogue global de la forêt.
Exemples
Pour obtenir un exemple qui utilise cette fonction, consultez recherche d’un SID dans un jeton d’accès.
Note
L’en-tête winbase.h définit LookupAccountSid comme alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows XP [applications de bureau | Applications UWP] |
serveur minimum pris en charge | Windows Server 2003 [applications de bureau | Applications UWP] |
plateforme cible | Windows |
d’en-tête | winbase.h (inclure Windows.h) |
bibliothèque | Advapi32.lib |
DLL | Advapi32.dll |
Voir aussi
Vue d’ensemble du contrôle d’accès