SecLookupAccountName, fonction (ntifs.h)
SecLookupAccountName accepte un compte en tant qu’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. Lors de l’entrée, cette valeur spécifie la taille en octets de la mémoire tampon d’entrée Sid. Si la fonction échoue, car 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 est NULL, SidSize doit être égal à zéro.
[out] NameUse
Pointeur vers un type énuméré SID_NAME_USE 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, car la mémoire tampon est trop petite, cette variable reçoit la taille de mémoire tampon requise. Si l’entrée paramètre 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 de retour
SecLookupAccountName retourne STATUS_SUCCESS sur la réussite ou l’un des codes d’erreur suivants en cas d’échec.
Retourner le code | Description |
---|---|
SEC_E_INTERNAL_ERROR | Une erreur interne s’est produite lors de la tentative de 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’est terminé de sorte qu’il n’est pas possible d’établir la connexion de l’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 est introuvable, les domaines approuvés sont vérifiés.
Utilisez des noms de compte complets (par exemple, domain_name\user_name) au lieu de noms isolés (par exemple, user_name). Les noms qualifiés complets ne sont pas ambigus et offrent 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 de principal d’utilisateur (UPN) (par exemple, someone@example.com).
En plus de rechercher des comptes locaux, des comptes de domaine local et des comptes de domaine de confiance explicites, SecLookupAccountName pouvez rechercher le nom de n’importe quel compte dans n’importe quel domaine de la forêt.
SecLookupAccountName est exporté par le pilote ksecdd, qui implémente cette fonction à l’aide des services d’assistance en mode utilisateur. En conséquence, 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é pendant l’E/S du fichier de pagination.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows XP |
plateforme cible | Universel |
d’en-tête | ntifs.h (include Ntifs.h) |
bibliothèque | Ksecdd.lib |
IRQL | <= APC_LEVEL |