GetPrivateObjectSecurity, fonction (securitybaseapi.h)
La fonction GetPrivateObjectSecurity récupère des informations à partir du descripteur de sécurité d’un objet privé.
Syntaxe
BOOL GetPrivateObjectSecurity(
[in] PSECURITY_DESCRIPTOR ObjectDescriptor,
[in] SECURITY_INFORMATION SecurityInformation,
[out, optional] PSECURITY_DESCRIPTOR ResultantDescriptor,
[in] DWORD DescriptorLength,
[out] PDWORD ReturnLength
);
Paramètres
[in] ObjectDescriptor
Pointeur vers une structure SECURITY_DESCRIPTOR . Il s’agit du descripteur de sécurité à interroger.
[in] SecurityInformation
Ensemble d’indicateurs de bits qui indiquent les parties du descripteur de sécurité à récupérer. Ce paramètre peut être une combinaison des indicateurs de bits SECURITY_INFORMATION .
[out, optional] ResultantDescriptor
Pointeur vers une mémoire tampon qui reçoit une copie des informations demandées à partir du descripteur de sécurité spécifié. La structure SECURITY_DESCRIPTOR est retournée dans un format auto-relatif .
[in] DescriptorLength
Spécifie la taille, en octets, de la mémoire tampon pointée vers le paramètre ResultantDescriptor .
[out] ReturnLength
Pointeur vers une variable que la fonction définit sur zéro si le descripteur est copié avec succès. Si la mémoire tampon est trop petite pour le descripteur de sécurité, cette variable reçoit le nombre d’octets requis. Si la valeur de cette variable est supérieure à la valeur du paramètre DescriptorLength lorsque la fonction retourne, la fonction retourne FALSE et aucun du descripteur de sécurité n’est copié dans la mémoire tampon.
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.
Remarques
Cette fonction est destinée uniquement aux gestionnaires de ressources. Pour implémenter la sémantique de contrôle d’accès standard pour la mise à jour des descripteurs de sécurité, un gestionnaire de ressources doit vérifier que les conditions suivantes sont remplies avant d’appeler GetPrivateObjectSecurity :
- Si le propriétaire de l’objet est défini, le processus appelant doit avoir l’autorisation WRITE_OWNER ou être le propriétaire de l’objet.
- Si la liste de contrôle d’accès discrétionnaire de l’objet est définie, le processus appelant doit avoir WRITE_DAC autorisation ou être le propriétaire de l’objet.
- Si la liste de contrôle d’accès système de l’objet est définie, le privilège SE_SECURITY_NAME doit être activé pour le processus d’appel.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows XP [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2003 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | securitybaseapi.h (inclure Windows.h) |
Bibliothèque | Advapi32.lib |
DLL | Advapi32.dll |
Voir aussi
Fonctions client/serveur Access Control