Etapa de PowerShell

  • Versão de lançamento: Zurich
  • Atualizado 31 de jul. de 2025
  • 9 min. de leitura
  • Execute scripts do PowerShell em máquinas remotas de sua instância ServiceNow por meio de MID Server.

    O PowerShell foi criado com base no Windows .NET Framework e foi projetado para controlar e automatizar a administração de máquinas e aplicações Windows. ServiceNow Compatível com PowerShell 3,0 a 7,4. O PowerShell 3,0 não é compatível com o Windows 2003 Server.

    Nota:
    Esta etapa exige uma assinatura IntegrationHub. Para obter mais informações, consulte Cronogramas jurídicos - IntegrationHub visão geral .

    Versão do PowerShell

    Por padrão, IntegrationHub O oferece suporte ao PowerShell versões 3,0 a 5,1. Para usar uma versão mais recente, Adicione a propriedade DO MID Server mid.property.ihub.prefer_powershell6Pluse defina como verdadeiro .
    Nota:
    O PowerShell versão 6,0 ou posterior não é pré-instalado em MID Servers. Você deve instalar a versão mais recente do PowerShell manualmente. As versões anteriores (PowerShell 3,0 a 5,1) e as versões mais recentes (PowerShell 6,0 a 7,4) podem coexistir no mesmo MID Server. Teste seu IntegrationHub E scripts PowerShell personalizados para garantir que tudo funcione antes de atualizar para uma versão mais recente do PowerShell.

    Funções e disponibilidade

    Disponível como uma etapa de ação de Workflow Studio. Usuários com a função action_designer podem criar uma ação personalizada com uma ou mais etapas de ação.

    Campos

    Campo Descrição
    Conexão Tipo de conexão a ser usada.
    • Defina a conexão em linha : Defina as informações de conexão na etapa de ação.
    • Usar Alias de Conexão : Defina as informações de conexão usando a tabela de alias de conexão. Usar um alias elimina a necessidade de configurar várias credenciais e perfis de informações de conexão ao usar uma ação em vários ambientes. Da mesma forma, se as informações de conexão forem alteradas, você não precisará atualizar sua ação personalizada.

    Para saber mais sobre conexões e credenciais, consulte Introdução a credenciais, conexões e aliases .

    Alias de conexão Registro de alias de conexão e credencial que o sistema usa para executar a etapa de ação. Usuários com a função flow_designer ou administrador podem criar ou selecionar um registro de conexão associado. Usar um alias elimina a necessidade de configurar várias credenciais e perfis de informações de conexão ao usar uma ação em vários ambientes. Da mesma forma, se as informações de conexão mudarem, você não precisará atualizar sua ação personalizada. Para saber mais sobre conexões e credenciais, consulte credenciais, conexões e aliases . O valor da credencial é exibido como uma cápsula de dados de senha (criptografada em 2 vias) no painel de dados.
    Nota:
    Este campo está disponível quando Usar Alias de Conexão Selecionado na lista Conexão.
    Alias de credencial Alias de credencial que o sistema usa para executar a etapa de ação. Usuários com a função flow_designer ou administrador podem criar ou selecionar um registro de conexão associado. Usar um alias elimina a necessidade de configurar várias credenciais ao usar uma ação em vários ambientes. Da mesma forma, se as informações de credencial mudarem, você não precisará atualizar sua ação personalizada. Para saber mais sobre conexões e credenciais, consulte credenciais, conexões e aliases . O valor da credencial é exibido como uma cápsula de dados de senha (criptografada em 2 vias) no painel de dados.
    Nota:
    Este campo está disponível quando Defina a conexão em linha Selecionado na lista Conexão.
    Host Especifique o nome de domínio totalmente qualificado do host de destino em que o sistema executa a etapa de ação. Por exemplo, host.domain.com.
    Nota:
    Este campo só fica visível quando Conexão . Defina a conexão em linha .
    Porta Especifique a porta de comunicação na qual o host de destino escuta conexões. Por exemplo, 5985. Deixe em branco para usar a porta padrão.
    Nota:
    Este campo só fica visível quando Conexão . Defina a conexão em linha .
    Seleção de MID Opção para selecionar um MID Server ou cluster DO MID específico. Escolha qualquer uma das opções a seguir.
    • MID Server de seleção automática : Seu ServiceNowa instância seleciona o. MID Serversem entrada manual.
    • MID Server específico : Seu ServiceNowusos da instância MID Serverque você especificar.
    • MID Cluster específico : Seu ServiceNowA instância usa o cluster DO MID que você especificar.

      Um cluster DO MID é um grupo de MID Servers que habilita seu ServiceNowinstância para lidar com várias integrações e melhorar a velocidade de integração. Para obter mais informações, consulte Configure a MID Server cluster.

    Este campo fica disponível quando Definir conexão em linha é selecionado na lista Conexão.
    Aplicação de MID Especifique a aplicação que o MID Server deve oferecer suporte para ser qualificado para seleção. O sistema executa a etapa de ação de um MID Server que oferece suporte à aplicação selecionada. Se você usar uma cápsula de dados para este campo, a cápsula deverá fazer referência ao nome da aplicação MID, não ao registro da aplicação MID.Este campo está disponível quando Defina a conexão em linha É selecionado na lista Conexão e Seleção automática DO MID Server Selecionado na lista Seleção de MID.
    Capacidades . MID Server suporte necessário para ser qualificado para seleção. O sistema executa a etapa de ação de um MID Server que oferece suporte aos recursos selecionados. Este campo está disponível quando Defina a conexão em linha É selecionado na lista Conexão e Seleção automática DO MID Server Selecionado na lista Seleção de MID.
    MID Server Cápsula de dados que contém uma referência sys_id a um MID Server registro [ecc_agent_list]. Este campo está disponível quando Defina a conexão em linha É selecionado na lista Conexão e MID Server específico Selecionado na lista Seleção de MID.
    Cluster do MID Cápsula de dados para o cluster MID que você deseja usar. Este campo fica disponível quando Definir conexão em linha é selecionado na lista Conexão, Cluster MID específico estiver selecionado na lista Seleção de MID.
    Tipo de comunicação Remota O local onde o script do PowerShell é executado, como o MID ou um servidor remoto.
    • Comunicação remota explícita (mais comum) : Estabeleça uma conexão com e execute o script em um servidor remoto.
    • Comunicação remota implícita (Avançado) : Executar um script em um MID Server ao importar módulos necessários de um servidor remoto. Se selecionado, defina Prefixo do nome remoto e. Módulos a serem importados campos. Para um desempenho ideal, importe somente os módulos necessários para a etapa. Se estiver em branco, todos os módulos disponíveis serão importados do servidor.
    • Execute em um MID Server ou faça com que seu script estabeleça uma sessão remota Executar um script diretamente em um MID Server ou defina especificações de comunicação remota no script. Este valor é o padrão.
    Nota:
    Para invocar uma função em um comando de script do PowerShell ou arquivo de script do PowerShell, o comando deve definir o bloco de parâmetros da função se a função tiver parâmetros de entrada. Este requisito se aplica a comunicação remota explícita e implícita. Para obter informações adicionais sobre bloco de parâmetros, consulte a documentação da Microsoft sobre parâmetros do Windows PowerShell em https://technet.microsoft.com/.
    Prefixo do nome remoto O caminho do arquivo, excluindo nomes de arquivo, para os módulos a serem carregados do servidor remoto.
    Nota:
    Este campo só fica visível quando Tipo de comunicação remota . Comunicação remota implícita (Avançado) .
    Módulos a serem importados A lista separada por vírgulas de módulos a serem importados do servidor remoto no caminho de arquivo definido.
    Nota:
    Este campo só fica visível quando Tipo de comunicação remota . Comunicação remota explícita (mais comum) ou Comunicação remota implícita (Avançado) .
    Etapa de teste do PowerShell Botão para testar a credencial configurada para a etapa do PowerShell. Para obter mais informações, consulte Teste uma credencial para a etapa do PowerShell .
    Tipo de script O tipo de script a ser executado no host do PowerShell.
    • Script em linha : Insira o script a ser executado no Comando campo da etapa.
    • Arquivo de script DO MID Server : Selecione o script PowerShell a ser executado no MID Server Tabela Arquivos de script [ecc_agent_script_file]. Este é o valor padrão e separa a lógica de script da ação, permitindo que você atualize o script sem precisar modificar e reimplantar a ação.
    MID Server Script Script PowerShell predefinido do MID Server Tabela Arquivos de script [ecc_agent_script_file].
    Nota:
    Este campo só estará disponível se Tipo de script . Arquivo de script DO MID Server .
    Caminho do script Caminho somente leitura para o selecionado MID Server script.
    Nota:
    Este campo só fica visível quando Tipo de script . Arquivo de script DO MID Server .
    Variáveis de entrada Os pares de nome-valor opcionais que representam os valores das variáveis de script do PowerShell. Você pode usar entradas de ação e dados de outras etapas no script do PowerShell. Defina os seguintes campos para cada variável:
    • Nome : O nome da variável de script para a qual passar um valor. O nome não pode corresponder a uma variável do PowerShell reservada ou proibida. Alguns nomes de variáveis são reservados para processamento interno e não devem ser usados como variáveis de entrada. Consulte Variáveis reservadas em Variáveis de script do PowerShell .
    • Tipo : O tipo de variável do PowerShell. Selecione texto sem formatação, criptografado ou booliano. Se Criptografado for selecionado, o valor aparecerá em texto sem formatação neste campo e será criptografado somente quando passar para a Fila do ECC.
    • Valor : O valor a ser mapeado para a variável. Insira manualmente um valor ou arraste uma cápsula de dados para o campo.
    Comando O script PowerShell em linha a ser executado no host de destino.
    Nota:
    Este campo só fica visível quando Tipo de script . Script em linha .

    Avaliação de erro de ação

    Se esta etapa falhar
    Tipo de dados: Choice

    Opção para continuar executando a próxima etapa ou ir para a avaliação de erro. Para usar o código de status da etapa ou a mensagem para uma condição de erro de ação personalizada, consulte Avaliação de erro de ação.

    Variáveis de script do PowerShell

    Para acessar variáveis de entrada do Comando , você deve chamá-los usando sintaxe especial. A sintaxe usada depende do valor de uma propriedade do sistema. . Tipo de comunicação remota . Execute em um MID Server ou faça com que seu script estabeleça uma sessão remota algumas variáveis reservadas estão disponíveis além das variáveis de entrada.

    Sintaxe da variável de entrada

    Por padrão, prefixe nomes de variáveis com um prefixo . caractere. Por exemplo, se uma variável de entrada for nomeada mensagem , use mensagem para acessar a variável no script.

    . mid.powershell.command.script.parameter_passingo parâmetro está definido como falso, prefixo o nome da variável com env:snc_ . Por exemplo, se uma variável de entrada for nomeada mensagem , use SNC_message para acessar a variável no script. Para saber mais sobre mid.powershell.command.script.parameter_passingparâmetro, consulte Parâmetros do MID Server .

    Variáveis reservadas

    . Tipo de comunicação remota . Execute em um MID Server ou faça com que seu script estabeleça uma sessão remota , as seguintes variáveis estão disponíveis para uso no script. Variáveis reservadas não podem ser usadas como nomes de variáveis de entrada personalizadas.

    Variável reservada Descrição
    um computador Endereço IP do host definido no registro do alias de conexão.
    crédito Objeto de credencial que contém as credenciais definidas no registro de conexão. Use esta variável com qualquer cmdlet do PowerShell que ofereça suporte ao parâmetro de credencial. Por exemplo, New-PSSession - credencial de crédito .
    log_info . mid.property.powershell.log_infoA propriedade está definida como verdadeira, adiciona informações de registro em log a um script do PowerShell.

    Os nomes de variáveis a seguir são reservados para processamento interno e não devem ser usados como variáveis de entrada.

    • script
    • UseCred
    • ÉMid
    • IsDescoberta
    • depurar
    • usuário
    • password
    • ExecutingScriptDirectory
    • MidScriptDirectory
    • hresult