Fonction ConvertStringSecurityDescriptorToSecurityDescriptorA (sddl.h)
La fonction ConvertStringSecurityDescriptorToSecurityDescriptor convertit un descripteur de sécurité au format chaîne en un descripteur de sécurité fonctionnel valide. Cette fonction récupère un descripteur de sécurité que la fonction ConvertSecurityDescriptorToStringSecurityDescriptor a converti au format chaîne.
Syntaxe
BOOL ConvertStringSecurityDescriptorToSecurityDescriptorA(
[in] LPCSTR StringSecurityDescriptor,
[in] DWORD StringSDRevision,
[out] PSECURITY_DESCRIPTOR *SecurityDescriptor,
[out] PULONG SecurityDescriptorSize
);
Paramètres
[in] StringSecurityDescriptor
Pointeur vers une chaîne terminée par null contenant le descripteur de sécurité au format chaîne à convertir.
[in] StringSDRevision
Spécifie le niveau de révision de la chaîne StringSecurityDescriptor . Actuellement, cette valeur doit être SDDL_REVISION_1.
[out] SecurityDescriptor
Pointeur vers une variable qui reçoit un pointeur vers le descripteur de sécurité converti. Le descripteur de sécurité retourné est auto-relatif. Pour libérer la mémoire tampon retournée, appelez la fonction LocalFree . Pour convertir le descripteur de sécurité en descripteur de sécurité absolu, utilisez la fonction MakeAbsoluteSD .
[out] SecurityDescriptorSize
Pointeur vers une variable qui reçoit la taille, en octets, du descripteur de sécurité converti. Ce paramètre peut être NULL.
Valeur retournée
Si la fonction réussit, la valeur de retour est différente de zéro.
Si la fonction échoue, la valeur de retour est égale à zéro. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError. GetLastError peut retourner l’un des codes d’erreur suivants.
Code de retour | Description |
---|---|
|
Un paramètre n'est pas valide. |
|
Le niveau de révision SDDL n’est pas valide. |
|
Un identificateur de sécurité (SID) dans la chaîne de descripteur de sécurité d’entrée est introuvable dans une opération de recherche de compte. |
Remarques
Si ace_type est ACCESS_ALLOWED_OBJECT_ACE_TYPE et que ni object_guid ni inherit_object_guid n’ont spécifié de GUID , ConvertStringSecurityDescriptorToSecurityDescriptor convertit ace_type en ACCESS_ALLOWED_ACE_TYPE. Pour plus d’informations sur les champs ace_type, object_guid et inherit_object_guid , consultez Chaînes ace.
Notes
L’en-tête sddl.h définit ConvertStringSecurityDescriptorToSecurityDescriptor comme un 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.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows XP [applications de bureau | applications UWP] |
Serveur minimal pris en charge | Windows Server 2003 [applications de bureau | applications UWP] |
Plateforme cible | Windows |
En-tête | sddl.h |
Bibliothèque | Advapi32.lib |
DLL | Advapi32.dll |
Voir aussi
Vue d’ensemble du contrôle d’accès
Fonctions Access Control de base