IX509CertificateTemplateWritable ::Commit, méthode (certenroll.h)
La méthode Commit supprime un modèle de ou l’enregistre dans Active Directory.
Syntaxe
HRESULT Commit(
[in] CommitTemplateFlags commitFlags,
[in] BSTR strServerContext
);
Paramètres
[in] commitFlags
Valeur d’énumération CommitTemplateFlags qui spécifie comment enregistrer ou supprimer le modèle. Il doit s’agir de l’une des valeurs suivantes.
[in] strServerContext
Variable BSTR qui contient le nom DNS du serveur Active Directory auquel les modifications seront appliquées. Si cette valeur est NULL, les modifications sont appliquées au contrôleur de domaine par défaut.
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 de retour | Description |
---|---|
|
CommitFlagSaveTemplateGenerateOID a été spécifié dans l’argument commitFlags , mais un modèle avec un nom commun correspondant ou un identificateur d’objet (OID) correspondant existe déjà. |
|
CommitFlagDelete a été spécifié dans l’argument commitFlags et un modèle portant le même nom commun a été trouvé, mais l’OID ne correspond pas. |
|
L’appelant ne dispose pas de l’autorisation appropriée pour enregistrer ou supprimer un modèle. L’appelant doit disposer des autorisations d’écriture et de suppression sur le conteneur de modèle et les objets de modèle dans Active Directory. Si l’appelant dispose de l’autorisation de suppression sur le conteneur et les objets du modèle, mais qu’il n’a pas l’autorisation de suppression sur le conteneur et les objets OID, le modèle est supprimé, mais pas l’OID. |
|
CommitFlagSaveTemplateUseCurrentOID ou CommitFlagSaveTemplateOverwrite a été spécifié dans l’argument commitFlags. Ces valeurs ne sont actuellement pas utilisées. |
|
CommitFlagDelete a été spécifié dans l’argument commitFlags , mais un modèle avec un nom commun (CN) correspondant est introuvable. |
|
La méthode Commit n’est pas prise en charge pour les modèles par défaut. |
|
L’objet IX509CertificateTemplateWritable n’a pas été initialisé. |
Remarques
Lorsque CommitFlagSaveTemplateGenerateOID est spécifié dans l’argument commitFlags , cette méthode n’aboutit que si le modèle et les conteneurs OID ont déjà été créés. Ces conteneurs peuvent être créés de l’une des manières suivantes :
- Installation d’une autorité de certification d’entreprise sur le serveur.
- Lancement du composant logiciel enfichable Certtmpl.msc.
- Utilisation de la commande Certutil.exe -installDefaultTemplates pour installer les modèles par défaut.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 7 [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 R2 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | certenroll.h |