Fonction SecLookupAccountName (ntifs.h)
SecLookupAccountName accepte un compte comme entrée et récupère un identificateur de sécurité (SID) pour le compte et le nom du domaine sur lequel le compte a été trouvé.
Syntaxe
KSECDDDECLSPEC NTSTATUS SEC_ENTRY SecLookupAccountName(
[in] PUNICODE_STRING Name,
[in, out] PULONG SidSize,
[out] PSID Sid,
[out] PSID_NAME_USE NameUse,
[out] PULONG DomainSize,
[in_out, optional] PUNICODE_STRING ReferencedDomain
);
Paramètres
[in] Name
Pointeur vers une chaîne Unicode qui spécifie le nom du compte. Utilisez une chaîne complète au format domain_name\user_name pour vous assurer que SecLookupAccountName recherche le compte dans le domaine souhaité.
[in, out] SidSize
Pointeur vers une variable qui spécifie la taille de la mémoire tampon Sid . En entrée, cette valeur spécifie la taille en octets de la mémoire tampon Sid d’entrée . Si la fonction échoue parce que la mémoire tampon est trop petite ou si SidSize est égal à zéro, cette variable reçoit la taille de mémoire tampon requise. En cas de réussite, cette variable contient la taille du Sid retourné.
[out] Sid
Pointeur vers une mémoire tampon qui reçoit la structure SID qui correspond au nom du compte pointé par le paramètre Name . Si ce paramètre a la valeur NULL, SidSize doit être égal à zéro.
[out] NameUse
Pointeur vers un SID_NAME_USE type énuméré qui reçoit le type du compte.
[out] DomainSize
Pointeur vers un ULONG qui reçoit la taille du paramètre ReferencedDomain . Si la fonction échoue parce que la mémoire tampon est trop petite, cette variable reçoit la taille de mémoire tampon requise. Si le paramètre d’entrée ReferencedDomain a la valeur NULL, ce paramètre reçoit zéro.
[in_out, optional] ReferencedDomain
Pointeur vers une mémoire tampon pour le nom du domaine où le nom du compte est trouvé. Ce paramètre est facultatif et peut être NULL. Pour les ordinateurs qui ne sont pas joints à un domaine, cette mémoire tampon reçoit le nom de l’ordinateur.
Valeur retournée
SecLookupAccountName retourne STATUS_SUCCESS en cas de réussite ou l’un des codes d’erreur suivants en cas d’échec.
Code de retour | Description |
---|---|
SEC_E_INTERNAL_ERROR | Une erreur interne s’est produite lors de l’échec de la connexion à l’autorité système locale (LSA) ou à l’appel de procédure locale (LPC) au fournisseur de sécurité. |
STATUS_ACCESS_DENIED | L’ID de processus associé au thread en cours d’exécution ne correspond pas à l’ID de processus actuel. |
STATUS_BUFFER_TOO_SMALL | La taille de la mémoire tampon pour le paramètre Sid ou ReferencedDomain était trop petite. |
STATUS_INVALID_PARAMETER | La longueur du paramètre Name a dépassé la longueur autorisée dans un message à l’autorité système locale. |
STATUS_NONE_MAPPED | Le paramètre Name est introuvable. |
STATUS_PROCESS_IS_TERMINATING | Ce processus s’étant terminé, il n’est pas possible d’établir la connexion d’appel de procédure locale (LPC). |
Remarques
SecLookupAccountName tente de trouver un SID pour le nom spécifié. La fonction vérifie les comptes locaux intégrés et définis par l’administration. Ensuite, la fonction vérifie le domaine principal. Si le nom n’y est pas trouvé, les domaines approuvés sont vérifiés.
Utilisez des noms de comptes complets (par exemple, domain_name\user_name) au lieu de noms isolés (par exemple, user_name). Les noms complets sont sans ambiguïté et fournissent de meilleures performances lorsque la recherche est effectuée. Cette fonction prend également en charge les noms DNS complets (par exemple, example.example.com\user_name) et les noms d’utilisateur principaux (UPN) (par exemple). someone@example.com
En plus de rechercher des comptes locaux, des comptes de domaine locaux et des comptes de domaine approuvés explicitement, SecLookupAccountName peut rechercher le nom de n’importe quel compte dans n’importe quel domaine de la forêt.
SecLookupAccountName équivaut à la fonction Win32 LookupAccountName .
SecLookupAccountName est exporté par le pilote ksecdd, qui implémente cette fonction à l’aide des services d’assistance en mode utilisateur. Par conséquent, l’utilisation de cette fonction dans les systèmes de fichiers doit respecter les règles habituelles de communication avec les services en mode utilisateur. SecLookupAccountName ne peut pas être utilisé lors de la pagination des E/S de fichier.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows XP |
Plateforme cible | Universal |
En-tête | ntifs.h (inclure Ntifs.h) |
Bibliothèque | Ksecdd.lib |
IRQL | <= APC_LEVEL |