Exiger une connexion chiffrée à un espace de noms

Vous pouvez exiger que les scripts client et les applications établissent une connexion chiffrée pour l’authentification en ajoutant le qualificateur RequireEncryption au fichier MOF (Managed Object Format) .mof qui crée l’espace de noms.

Une connexion chiffrée à un espace de noms WMI spécifie RPC_C_AUTHN_LEVEL_PKT_PRIVACY (ou PktPrivacy dans un script) pour l’authentification. Le qualificateur RequiresEncryption entraîne le rejet par WMI des demandes de données entrantes, sauf s’ils utilisent explicitement l’authentification chiffrée. Pour plus d’informations, consultez Définition du niveau de sécurité de processus par défaut à l’aide de VBScript ou définition de l’authentification à l’aide de C++.

Vous pouvez également modifier un espace de noms existant en ajoutant cet attribut, puis en compilez à nouveau le fichier MOF. RequiresEncryption est utilisé dans MOF avec l’instruction de préprocesseur de l’espace de noms pragma .

La procédure suivante définit l’espace de noms pour exiger une connexion chiffrée.

Pour définir le chiffrement requis

  1. Créez un fichier MOF (Managed Object Format) ou modifiez votre fichier MOF existant qui définit l’espace de noms.

    L’exemple de code suivant montre l’espace de noms qui sera modifié est root\MyNamespace et le fichier est nommé MyNamespace_security.mof. RequiresEncryption a un type de données booléen pour qu’il soit défini sur True ou False.

    #pragma namespace("\\\\.\\Root\\MyNamespace") 
    
    [RequiresEncryption(TRUE)] 
    instance of __systemSecurity { };
    
  2. Exécutez mofcomp.exe pour compiler le fichier MOF.

    c:\mofcomp MyNamespace_security.mof

    En C++, utilisez les méthodes IMoFCompiler .

WMI rejette un client qui utilise le niveau d’authentification par défaut, car DCOM négocie la sécurité au niveau requis par le processus SVCHOST dans lequel le service WMI est en cours d’exécution. Pour plus d’informations sur les hôtes de service, consultez Hébergement et sécurité du fournisseur. Pour plus d’informations sur la définition des niveaux d’authentification lors de la connexion à des espaces de noms WMI, consultez Définition du niveau de sécurité de processus par défaut à l’aide de C++, définition de l’authentification à l’aide de C++ ou définition du niveau de sécurité de processus par défaut à l’aide de VBScript.

Lors du retour de données sur une connexion de rappel asynchrone, WMI renvoie un message d’accès refusé à l’ordinateur demandeur. WMI effectue également une entrée de journal dans le journal des événements NT de l’ordinateur avec l’espace de noms chiffré indiquant qu’une connexion sécurisée ne peut pas être établie au client.

À compter de Windows Vista, le fichier WbemCore.log n’existe plus. Vous pouvez vérifier le journal des événements NT pour les entrées indiquant les demandes de données entrantes rejetées aux espaces de noms qui nécessitent un chiffrement.

Définition des descripteurs de sécurité Namepace

WbemAuthenticationLevelEnum

Sécurisation d’une connexion WMI distante