Arquivos do PowerShell MID Server

  • Versão de lançamento: Zurich
  • Atualizado 31 de jul. de 2025
  • 4 min. de leitura
  • As funções do PowerShell são armazenadas em arquivos de script (*.ps1) que usam uma extensão de nome de arquivo do módulo de Script do PowerShell (*.psm1).

    As funções do PowerShell são usadas pelos arquivos de script do MID Server do PowerShell incluídos nestes pacotes de atividades:
    • Active Directory
    • Trocar
    • SCCM
    • PowerShell

    PSScript.ps1

    Este script executa algumas tarefas, como teste de credencial, criptografia de senha e a execução de scripts configurados no Designer de atividades de Orquestração ou em Arquivos de Script MID. No entanto, o foco deste documento é como PSScript.ps1 usa o módulo credential.psm1 para testar o acesso a hosts remotos.

    As variáveis do PowerShell geralmente são usadas diretamente no comando de execução do PowerShell ou como argumentos no arquivo de script do MID Server que você especifica. Existem variáveis especiais que são passadas para PSScript.ps1, como credType.
    Figura 1. Uso de credType em parâmetros de execução
    Uso de credType em parâmetros de execução

    CredTypes do PowerShell

    Os tipos de credencial do PowerShell:

    Tipo Descrição
    WMI testCredentialWMI
    Trocar testCredentilExchange
    AD testCredentilAD
    SCCM testCredentilSCCM

    Se nenhum tipo de credencial for passado para o script PSScrip.ps1, o MID Server usará como padrão a função de teste WMI para testar o acesso ao host de destino. Se houver um tipo de credencial usado, o MID Server executará a função de teste correspondente para esse tipo de credencial.

    Códigos de saída

    Esses códigos de saída são retornados do script PSScript.ps1 e registrados no arquivo de log do MID Server.

    Tabela 1. Códigos de saída PSScript.ps1
    Tipo Função teste
    0 Comando/script do PowerShell executado com sucesso.
    1 Teste concluído com sucesso, mas o comando/script falhou ao executar.
    2 Sintaxe incorreta passada para o script.
    3 Falha em todas as credenciais, incluindo a conta de serviço do MID Server, ao executar o comando/script.
    4 O teste foi aprovado e a atividade foi executada, mas foi retornado um erro. Não foi possível encontrar o usuário de exemplo.

    DiagnosticsUtil.psm1

    O MID Server usa este arquivo de módulo para executar o registro em log do PowerShell que auxilia na depuração de qualquer atividade de Orquestração usando scripts do PowerShell. Você também pode adicionar instruções de depuração diretamente a scripts personalizados.
    Tabela 2. Utilitários de diagnóstico do PowerShell
    Serviço público Descrição
    SNCLog-DebugInfo Registre uma mensagem de depuração para um script do PowerShell ou atividade de Orquestração do PowerShell. Exemplos:
    • SNCLog-DebugInfo -message "Minha mensagem de depuração..."
    • SNCLog-DebugInfo "Minha mensagem de depuração"
    SNCLog-ParameterInfo Registre em log um valor de parâmetro de função. Para "function getHostName {param([String] $ target)", o primeiro valor para a tabela de hash do PowerShell é uma cadeia de caracteres para indicar qual função será executada e os valores de cada um dos parâmetros da função. Exemplos:
    • Função com parâmetro único: SNCLog-ParameterInfo @ ("Running getHostName", $ target)
      Nota:
      A mensagem de depuração mostra, 'Running getHostName $target:[actual value of $target]'.
    • Função com vários parâmetros: SNCLog-ParameterInfo @("Running functionName", $param1, $param2, $param3)
    SNCObfuscate-Value Use este utilitário para criptografar valores para fins de segurança. A função exibe "$ variableName": ***, em que *** é o valor ofuscado. Exemplo:
    SNCObfuscate-Value $password
    Nota:
    A mensagem de depuração é: "$ password: ***".

    Credentials.psm1

    O MID Server usa este arquivo de módulo para testar o acesso a um host de destino. O MID Server percorre todas as credenciais Windows armazenadas em sua tabela de credenciais usando as seguintes funções de tipo de acesso, a menos que a atividade do PowerShell tenha um tipo de credencial (credType) definido. Todas as atividades ServiceNow® criadas do PowerShell são codificadas para usar um tipo de credencial específico. Como resultado, o MID Server testa somente o acesso à credencial em relação à função designada.
    Tabela 3. Funções de teste do PowerShell
    Função Descrição
    testCredentialWMI Testa o usuário e a senha fornecidos no host de destino usando o objeto Get-WMI.
    testCredentilAD Testa o usuário e a senha fornecidos no host de destino usando o objeto DirectoryEntry interno.
    testCredentialExchange Testa o usuário e a senha fornecidos para criar uma sessão em um host do Exchange. Este teste usa o recurso de comunicação remota do PowerShell interno em um host remoto. O WinRM é configurado nos servidores do Exchange por padrão.
    testCredentialSCCM Testa o usuário e a senha fornecidos para criar uma sessão em um servidor SCCM. Este teste usa o recurso de comunicação remota do PowerShell interno em um host remoto. Este teste requer que o WinRM seja configurado.
    testNoCredentialAccessWMI Testa o usuário e a senha fornecidos no host de destino usando o objeto Get-WMI. Este teste é usado quando nenhum credType é usado.
    Nota:
    Se o teste for aprovado usando uma dessas funções, essa credencial será usada para executar o script/comando do PowerShell. Se os testes não conseguirem acessar o host de destino usando essas funções, o MID Server executará o script/comando do PowerShell na conta do serviço do MID Server.

    Este diagrama ilustra a dependência do comportamento de seleção de credencial no host que está sendo direcionado pela atividade do PowerShell. Se o host de destino for o endereço IP ou o nome do host do MID Server, o MID Server ignorará todas as credenciais na tabela Credenciais e usará a conta do serviço do MID Server. Se o host de destino não for o MID Server, todas as credenciais Windows serão usadas primeiro. Se todas as credenciais na tabela Credenciais não funcionarem na execução da atividade do PowerShell, o MID Server usará a conta de serviço do MID Server.

    Figura 2. Critérios de seleção de credenciais do PowerShell
    Critérios de seleção de credenciais do PowerShell

    ActiveDirectory.psm1

    Este arquivo de módulo armazena as funções usadas pelos scripts do PowerShell enviados com o pacote de atividades do Active Directory.

    Exchange.psm1

    Este arquivo de módulo armazena as funções usadas pelos scripts do PowerShell enviados com o pacote de atividades do Exchange.

    SCCM.psm1

    Este arquivo de módulo armazena as funções usadas pelos scripts do PowerShell enviados com o pacote de atividades SCCM.