Fichiers PowerShell du serveur MID

  • Rversion finale: Australia
  • Mis à jour 12 mars 2026
  • 4 minutes de lecture
  • Les fonctions PowerShell sont stockées dans des fichiers de script (*.ps1) qui utilisent une extension de nom de fichier du module de script PowerShell (*.psm1).

    Les fonctions PowerShell sont utilisées par les fichiers de script Serveur MID PowerShell inclus dans ces packs d’activités :
    • Active Directory
    • Échanger
    • SCCM
    • PowerShell

    PSScript.ps1

    Ce script effectue quelques tâches, telles que le test des informations d’identification, le chiffrement des mots de passe et l’exécution des scripts configurés dans le Concepteur d’activité Orchestration ou dans les fichiers de script MID. Toutefois, ce document se concentre sur la façon dont PSScript.ps1 utilise le module credential.psm1 pour tester l’accès aux hôtes distants.

    Les variables PowerShell sont généralement utilisées directement dans la commande d’exécution PowerShell ou comme arguments dans le fichier de script du serveur MID que vous spécifiez. Il existe des variables spéciales transmises à PSScript.ps1, telles que credType.
    Figure 1. Utilisation de credType dans les paramètres d’exécution
    Utilisation de credType dans les paramètres d’exécution

    credTypes PowerShell

    Types d’informations d’identification PowerShell :

    Type Description
    WMI testCredentialWMI
    Échanger testCredentilExchange
    AD testCredentilAD
    SCCM testCredentilSCCM

    Si aucun type d’informations d’identification n’est transmis au script PSScrip.ps1, le serveur MID utilise par défaut la fonction de test WMI pour tester l’accès à l’hôte cible. Si un type d’informations d’identification est utilisé, le serveur MID exécute la fonction de test correspondante pour ce type d’informations d’identification.

    Codes de sortie

    Ces codes de sortie sont retournés à partir du script PSScript.ps1 et consignés dans le fichier journal du serveur MID.

    Tableau 1. Codes de sortie PSScript.ps1
    Type Fonction de test
    0 Commande/script PowerShell exécuté avec succès.
    1 Le test s’est terminé avec succès, mais la commande/le script n’a pas pu s’exécuter.
    2 Une syntaxe incorrecte a été transmise au script.
    3 Toutes les informations d’identification, y compris le compte de service Serveur MID, ont échoué à l’exécution de la commande/du script.
    4 Test réussi et exécution de l’activité, mais une erreur a été renvoyée. L’utilisateur d’exemple est introuvable.

    DiagnosticsUtil.psm1

    Le serveur MID utilise ce fichier de module pour effectuer la journalisation PowerShell qui facilite le débogage de toute activité d’orchestration à l’aide du scripting PowerShell. Vous pouvez également ajouter des instructions de débogage directement aux scripts personnalisés.
    Tableau 2. Utilitaires de diagnostic PowerShell
    Utilitaire Description
    SNCLog-DebugInfo Consignez un message de débogage pour un script PowerShell ou une activité PowerShell Orchestration. Exemples :
    • SNCLog-DebugInfo -message "Mon message de débogage... "
    • SNCLog-DebugInfo « Mon message de débogage »
    SNCLog-ParameterInfo Consignez une valeur de paramètre de fonction. Pour « function getHostName{ param( [String] $target ) », la première valeur de la table de hachage PowerShell est une chaîne pour indiquer quelle fonction s’exécute et les valeurs de chacun des paramètres de fonction. Exemples :
    • Fonction avec un seul paramètre : SNCLog-ParameterInfo @(« Exécution de getHostName », $target)
      Remarque :
      Le message de débogage indique « Running getHostName $target :[actual value of $target] ».
    • Fonction avec plusieurs paramètres : SNCLog-ParameterInfo @(« Running functionName », $param 1, $param 2, $param 3)
    SNCObfuscate-value Utilisez cet utilitaire pour chiffrer des valeurs à des fins de sécurité. La fonction affiche « $variableName »:***, où *** est la valeur obscurcie. Exemple :
    $password SNCObfuscate-Value
    Remarque :
    Le message de débogage se lit comme suit : « $password : *** ».

    Informations d’identification.psm1

    Le serveur MID utilise ce fichier de module pour tester l’accès à un hôte cible. Le serveur MID parcourt en boucle toutes les Windows informations d’identification stockées dans sa table des informations d’identification à l’aide des fonctions de type d’accès suivantes, sauf si un type d’informations d’identification (credType) est défini pour l’activité PowerShell. Toutes les ServiceNow® activités PowerShell créées sont codées en dur pour utiliser un type d’informations d’identification spécifique. Par conséquent, le serveur MID teste uniquement l’accès aux informations d’identification par rapport à la fonction désignée.
    Tableau 3. Fonctions de test PowerShell
    Fonction Description
    testCredentialWMI Teste l’utilisateur et le mot de passe donnés sur l’hôte cible à l’aide de l’objet Get-WMI .
    testCredentilAD Teste l’utilisateur et le mot de passe donnés sur l’hôte cible à l’aide de l’objet intégré DirectoryEntry .
    testCredentialExchange Teste l’utilisateur et le mot de passe donnés pour créer une session sur un hôte Exchange. Ce test utilise la fonctionnalité de communication à distance PowerShell intégrée sur un hôte distant. WinRM est configuré par défaut sur les serveurs Exchange.
    testCredentialSCCM Teste l’utilisateur et le mot de passe donnés pour créer une session sur un serveur SCCM. Ce test utilise la fonctionnalité de communication à distance PowerShell intégrée sur un hôte distant. Ce test nécessite la configuration de WinRM.
    testNoCredentialAccessWMI Teste l’utilisateur et le mot de passe donnés sur l’hôte cible, à l’aide de l’objet Get-WMI . Ce test est utilisé lorsqu’aucun credType n’est utilisé.
    Remarque :
    Si le test réussit à l’aide de l’une de ces fonctions, ces informations d’identification sont utilisées pour exécuter le script/la commande PowerShell. Si les tests ne parviennent pas à accéder à l’hôte cible à l’aide de ces fonctions, le serveur MID exécute le script/la commande PowerShell sous le compte du service de serveur MID.

    Ce diagramme illustre la dépendance du comportement de sélection des informations d’identification vis-à-vis de l’hôte ciblé par l’activité PowerShell. Si l’hôte cible est l’adresse IP ou le nom d’hôte du serveur MID, le serveur MID contourne toutes les informations d’identification de la table des informations d’identification et utilise le compte du service de serveur MID. Si l’hôte cible n’est pas le serveur MID, toutes les Windows informations d’identification sont utilisées en premier. Si toutes les informations d’identification de la table Informations d’identification échouent lors de l’exécution de l’activité PowerShell, le serveur MID utilise le compte de service du serveur MID.

    Figure 2. Critères de sélection des informations d’identification PowerShell
    Critères de sélection des informations d’identification PowerShell

    ActiveDirectory.psm1

    Ce fichier de module stocke les fonctions utilisées par les scripts PowerShell fournis avec le pack d’activité Active Directory .

    Exchange.psm1

    Ce fichier de module stocke les fonctions utilisées par les scripts PowerShell fournis avec le pack d’activité Exchange .

    SCCM.psm1

    Ce fichier de module stocke les fonctions utilisées par les scripts PowerShell fournis avec le pack d’activité SCCM .