Partager via


Méthode ICspInformation ::GetDefaultSecurityDescriptor (certenroll.h)

La méthode GetDefaultSecurityDescriptor récupère le descripteur de sécurité de clé privée par défaut.

Syntaxe

HRESULT GetDefaultSecurityDescriptor(
  [in]  VARIANT_BOOL MachineContext,
  [out] BSTR         *pValue
);

Paramètres

[in] MachineContext

Une variable VARIANT_BOOL qui indique s’il faut récupérer le descripteur de sécurité pour l’ordinateur ou l’utilisateur. Spécifiez VARIANT_TRUE pour l’ordinateur et VARIANT_FALSE pour l’utilisateur.

[out] pValue

Pointeur vers une variable BSTR qui contient le descripteur de sécurité.

Valeur retournée

Si la fonction réussit, la fonction retourne S_OK.

Si la fonction échoue, elle retourne une valeur HRESULT qui indique l’erreur. Les valeurs possibles sont notamment celles figurant dans le tableau suivant. Pour obtenir la liste des codes d’erreur courants, consultez Valeurs HRESULT courantes.

Code/valeur de retour Description
CERTSRV_E_PROPERTY_EMPTY
La valeur de la propriété est introuvable.
NTE_BAD_TYPE
Le fournisseur de chiffrement ne prend pas en charge les descripteurs de sécurité.
NTE_NOT_FOUND
Le fournisseur de chiffrement ne prend pas en charge les descripteurs de sécurité.
NTE_BAD_KEY_STATE
Le fournisseur de chiffrement ne prend pas en charge les descripteurs de sécurité.

Remarques

Pour utiliser le descripteur de sécurité, vous devez appeler la fonction ConvertStringSecurityDescriptorToSecurityDescriptor incluse avec l’API d’autorisation Microsoft et spécifier la chaîne retournée par la méthode GetDefaultSecurityDescriptor . La fonction retourne un pointeur vers une structure SECURITY_DESCRIPTOR .

Le descripteur de sécurité par défaut est utilisé pour définir l’accès aux clés privées de l’ordinateur et de l’utilisateur de la manière suivante :

  • Par défaut, seuls les administrateurs et services locaux exécutés sous le compte LocalSystem peuvent accéder aux clés privées associées au compte d’ordinateur.
  • Lorsqu’un fournisseur stocke la clé privée d’un utilisateur dans un fichier chiffré dans le profil utilisateur, il utilise un descripteur de sécurité pour définir les autorisations d’accès au fichier.

Cette méthode récupère le descripteur de sécurité par défaut qui sera associé au paramètre MachineContext spécifié et au fournisseur actuel si une nouvelle clé privée est créée. Vous pouvez utiliser le descripteur par défaut pour créer un descripteur personnalisé. Les descripteurs personnalisés sont généralement créés lorsqu’une clé privée associée à un certificat de contexte d’ordinateur doit être utilisée par un service s’exécutant sous un compte autre que le compte LocalSystem.

Certains fournisseurs de chiffrement ne prennent pas en charge les descripteurs de sécurité. Par exemple, les fournisseurs de carte intelligents et de module de sécurité matérielle (HSM).

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 [applications de bureau uniquement]
Plateforme cible Windows
En-tête certenroll.h
DLL CertEnroll.dll

Voir aussi

ICspInformation