Détection de la prise en charge du protocole WS-Management par un ordinateur distant

Vous pouvez utiliser les méthodes Session.Identifier ou IWSManSession.Identifier pour déterminer si l’ordinateur distant dispose d’un service qui prend en charge le protocole WS-Management.

Si un service de protocole WS-Management est configuré sur l’ordinateur distant et écoute les requêtes, le service peut détecter une demande d’identification par le code XML suivant dans l’en-tête.

xmlns:wsmid="https://schemas.dmtf.org/wbem/wsman/identity/1/wsmanidentity"

Le service de protocole WS-Management qui reçoit la demande retourne les informations contenues dans la liste suivante dans le corps du message :

  • Version du protocole WS-Management. Par exemple : "https://schemas.dmtf.org/wbem/wsman/1/wsman".
  • Le fournisseur de produits, par exemple, « Microsoft Corporation ».
  • Version du produit. Si la demande est envoyée avec WSManFlagUseNoAuthentication dans le paramètre flags , aucune information de version du produit n’est retournée. Si la demande est envoyée avec l’authentification par défaut en vigueur ou avec un autre mode d’authentification spécifié, les informations de version du produit peuvent être retournées.

La demande pour détecter si l’ordinateur distant dispose d’un service de protocole configuré et à l’écoute WS-Management peut être effectuée au début d’un script avec d’autres opérations. Cela permet de vérifier que le ou les ordinateurs cibles peuvent répondre à d’autres demandes de protocole WS-Management. La vérification peut également être effectuée dans un script distinct.

Pour détecter un service de protocole WS-Management

  1. Créez un objet WSMan .

    Set objWsman = CreateObject("Wsman.Automation")
    
  2. Déterminez si la requête doit être envoyée authentifiée ou non authentifiée et définissez le paramètre flags en conséquence dans l’appel à WSMan.CreateSession.

    set objSession = objWsman.CreateSession("Remote1", _
       objWsman.SessionFlagUseNoAuthentication)
    
  3. Appelez Session.Identifier.

    objSession.Identify
    

Exemples

L’exemple de code VBScript suivant envoie une demande d’identification non authentifiée à l’ordinateur distant nommé « Remote1 » dans le même domaine.

set objWsman = CreateObject("Wsman.Automation")
set objSession = objWsman.CreateSession("Remote1", _
  objWsman.SessionFlagUseNoAuthentication)
WScript.Echo objSession.Identify

La réponse suivante montre le code XML retourné par l’ordinateur distant. Version du protocole WS-Management (« https://schemas.dmtf.org/wbem/wsman/1/wsman.xsd") et le fournisseur du système d’exploitation (« Microsoft Corporation ») sont spécifiés dans le code XML retourné. Étant donné que le message n’est pas authentifié, la version du produit n’est pas retournée par le service Gestion à distance Windows.

<wsmid:IdentifyResponse xmlns:wsmid=
    "https://schemas.dmtf.org/wbem/wsman/identity/1/wsmanidentity.xsd">
<wsmid:ProtocolVersion>https://schemas.dmtf.org/wbem/wsman/1/wsman.xsd
    </wsmid:ProtocolVersion>
<wsmid:ProductVendor>Microsoft Corporation</wsmid:ProductVendor>
<wsmid:ProductVersion>OS: 0.0.0 SP: 0.0 Stack:1.0</wsmid:ProductVersion>
</wsmid:IdentifyResponse>

L’exemple de code VBScript suivant envoie une demande d’identification authentifiée à l’ordinateur distant.

set ObjWSMan = CreateObject("Wsman.Automation")
set objSession = WSMan.CreateSession("Remote1", _
  objWSMan.SessionFlagUseKerberos)
WScript.Echo objSession.Identify

Étant donné que la demande a été envoyée avec l’authentification, les informations de version sont retournées.

<wsmid:IdentifyResponse xmlns:wsmid=
    "https://schemas.dmtf.org/wbem/wsman/identity/1/wsmanidentity.xsd">
<wsmid:ProtocolVersion>https://schemas.dmtf.org/wbem/wsman/1/wsman.xsd
    </wsmid:ProtocolVersion>
<wsmid:ProductVendor>Microsoft Corporation</wsmid:ProductVendor>
<wsmid:ProductVersion>OS: 6.0.5384 SP: 0.0 Stack:1.0</wsmid:ProductVersion>
</wsmid:IdentifyResponse>

À propos de la gestion à distance Windows

Utilisation de la gestion à distance Windows

Informations de référence sur la gestion à distance Windows