MakeSelfRelativeSD, fonction (securitybaseapi.h)
La fonction MakeSelfRelativeSD crée un descripteur de sécurité au format auto-relatif en utilisant un descripteur de sécurité au format absolu comme modèle.
Syntaxe
BOOL MakeSelfRelativeSD(
[in] PSECURITY_DESCRIPTOR pAbsoluteSecurityDescriptor,
[out, optional] PSECURITY_DESCRIPTOR pSelfRelativeSecurityDescriptor,
[in, out] LPDWORD lpdwBufferLength
);
Paramètres
[in] pAbsoluteSecurityDescriptor
Pointeur vers une structure SECURITY_DESCRIPTOR au format absolu. La fonction crée une version de ce descripteur de sécurité au format auto-relatif sans modifier l’original.
[out, optional] pSelfRelativeSecurityDescriptor
Pointeur vers une mémoire tampon que la fonction remplit avec un descripteur de sécurité au format auto-relatif.
[in, out] lpdwBufferLength
Pointeur vers une variable spécifiant la taille de la mémoire tampon vers laquelle pointe le paramètre pSelfRelativeSD . Si la mémoire tampon n’est pas suffisamment grande pour le descripteur de sécurité, la fonction échoue et définit cette variable sur la taille minimale requise.
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. Les codes de retour possibles incluent, sans s’y limiter, les éléments suivants.
Code/valeur de retour | Description |
---|---|
|
Une ou plusieurs des mémoires tampons sont trop petites. |
Remarques
Un descripteur de sécurité au format absolu contient des pointeurs vers les informations qu’il contient, au lieu de contenir les informations elles-mêmes. Un descripteur de sécurité au format auto-relatif contient les informations dans un bloc de mémoire contigu. Dans un descripteur de sécurité auto-relatif, une structure SECURITY_DESCRIPTOR démarre toujours les informations, mais les autres composants du descripteur de sécurité peuvent suivre la structure dans n’importe quel ordre. Au lieu d’utiliser des adresses mémoire, les composants du descripteur de sécurité sont identifiés par des décalages à partir du début du descripteur de sécurité. Ce format est utile lorsqu’un descripteur de sécurité doit être stocké sur une disquette ou transmis au moyen d’un protocole de communication.
Un serveur qui copie des objets sécurisés sur différents supports peut utiliser la fonction MakeSelfRelativeSD pour créer un descripteur de sécurité auto-relatif à partir d’un descripteur de sécurité absolu et la fonction MakeAbsoluteSD pour créer un descripteur de sécurité absolu à partir d’un descripteur de sécurité auto-relatif.
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 | securitybaseapi.h (inclure Windows.h) |
Bibliothèque | Advapi32.lib |
DLL | Advapi32.dll |