Etapa de PowerShell

  • Versão de lançamento: Yokohama
  • Atualizado 30 de jan. de 2025
  • 8 min. de leitura
  • Execute scripts PowerShell em máquinas remotas do seu ServiceNowinstância por meio de a. 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. ServiceNowCompatível com PowerShell 3,0 a 5,1. O PowerShell 3,0 não é compatível com o Windows 2003 Server.

    Nota:
    Esta etapa requer um Integration Hubassinatura. Para obter mais informações, consulte Cronogramas jurídicos - Integration Hubvisão geral .

    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 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. O uso de 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 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. Os usuários com a função flow_designer ou admin podem criar ou selecionar um registro de conexão associado. O uso de 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 (criptografia de 2 vias) no painel de dados.
    Nota:
    Este campo estará disponível quando Usar alias de conexão Está selecionado na lista de conexões.
    Alias de credencial Alias de credencial que o sistema usa para executar a etapa de ação. Os usuários com a função flow_designer ou admin podem criar ou selecionar um registro de conexão associado. O uso de 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 (criptografia de 2 vias) no painel de dados.
    Nota:
    Este campo estará disponível quando Defina a conexão em linha Está selecionado na lista de conexões.
    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 o MID Server ou Cluster do MID específico.
    • Seleção automática do MID Server: seleciona o MID Server automaticamente.
    • MID Server específico: usa o MID Server selecionado.
    • Cluster do MID específico: usa o Cluster do MID selecionado.
    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 a partir 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 estará disponível quando Defina a conexão em linha Está selecionado na lista de conexões e. MID Server de seleção automática Está selecionado na lista Seleção DO MID.
    Capacidades . MID Serverdeve ser compatível para ser elegível para seleção. O sistema executa a etapa de ação de um MID Serverque oferece suporte às capacidades selecionadas. Este campo estará disponível quando Defina a conexão em linha Está selecionado na lista de conexões e. MID Server de seleção automática Está selecionado na lista Seleção DO MID.
    MID Server Cápsula de dados que contém uma referência sys_id a um MID Serverregistro de [ecc_agent_list]. Este campo estará disponível quando Defina a conexão em linha Está selecionado na lista de conexões e. MID Server específico Está selecionado na lista Seleção DO 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 em que o script PowerShell é executado, como o MID ou um servidor remoto.
    • Remoto explícito (mais comum) : Estabeleça uma conexão com e execute o script em um servidor remoto.
    • Remoto implícito (Avançado) : Execute um script em um MID Serverao importar módulos necessários de um servidor remoto. Se selecionado, defina o. Prefixo de nome remoto e. Módulos a serem importados campos. Para obter o 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 peça que seu script estabeleça uma sessão remota : Execute um script diretamente em um MID Serverou 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 powershell ou arquivo de script powershell, o comando deve definir o bloco de parâmetros de função se a função tiver parâmetros de entrada. Este requisito se aplica à 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 de 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 é Remoto implícito (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 é Remoto explícito (mais comum) ou Remoto implícito (Avançado) .
    Etapa do PowerShell de teste Botão para testar a credencial configurada para a etapa PowerShell. Para obter mais informações, consulte Teste uma credencial para a etapa PowerShell .
    Tipo de script O tipo de script a ser executado no host 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 a partir de MID ServerTabela de 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 ServerTabela de 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 Serverscript.
    Nota:
    Este campo só fica visível quando Tipo de script é Arquivo de script do MID Server .
    Variáveis de entrada Os pares opcionais nome-valor 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 de 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 peça 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 . 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

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

    Variável reservada Descrição
    computador Endereço IP do host definido no registro de 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 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