Construtor de Fluxo de Trabalho do Neuron
O Ivanti Neurons (recurso) está sendo preterido e substituído pela nova experiência do Ivanti Neurons Bots. Consulte Migrando para o Neurons Bots para obter mais informações.
O fluxo de trabalho de um Neuron é composto de uma série de estágios conectados e projetados para automatizar processos de negócio, podendo ser usado para descobrir, fornecer insights e executar ações. Você pode criar um fluxo de trabalho do zero ou editar um dos predefinidos para ajustá-lo a suas necessidades usando o Construtor de Neuron.
Configurações do Neuron
Use o painel Configurações do Neuron para configurar o fluxo de trabalho do Neuron. As configurações disponíveis dependem do tipo de Neuron.
Nome: o nome do Neuron.
Categoria: selecione a categoria na lista suspensa: Conformidade, Produtividade do Usuário, Continuidade do Negócio ou Otimização de Recursos.
Grupo de destino: selecione Personalizado ou Todos os dispositivos. Se for Personalizado, selecione na lista suspensa de todos os grupos de dispositivos públicos disponíveis. Grupos de dispositivos são configurados em Dispositivos > Grupo de dispositivos.
Configuração de status: alterne o status entre Inativo e Ativo. Quando o Neuron é definido como ativo, as configurações de agendamento ficam disponíveis para você determinar quando ele deve ser executado. Preencha o seguinte:
- Repetir: diariamente ou semanalmente
- Frequência: minutos ou horas
- Intervalo: se horas; 1 a 24. Se minutos; 30 a 55, em intervalos de 5 minutos.
- Início: data e hora
- Fim: data e hora
Nome: o nome do Neuron.
Configuração de status: alterne o status entre Não publicado e Publicado. Quando o Neuron está definido como publicado, o nome de exibição da ação aparece para você nomeá-la. Esse nome aparecerá no painel Ações, na exibição de dispositivos.
Meus estágios
O painel Meus Estágios à esquerda contém todos os estágios predefinidos e instalados. Existem diferentes categorias de estágio:
Consultas e ações adicionais podem ser encontradas na Biblioteca e adicionadas a Meus Estágios. Para mais detalhes sobre a Biblioteca, acesse Neurons (recurso).
- Consulta: usado para apresentar e filtrar informações de dispositivos que atendam aos critérios especificados. Por exemplo, mostrar dispositivos com menos de 10% de espaço livre no disco. A saída e o contexto desse estágio de consulta podem ser passados aos estágios subsequentes no fluxo de trabalho do Neuron. Cada consulta contém uma configuração que permite controlar o comportamento do Neuron quando não são retornados resultados. Por padrão, a opção O Neuron só continuará se forem retornados resultados fica selecionada. Isso significa que, se nenhum resultado for retornado dos dispositivos on-line, o fluxo de trabalho do Neuron não progredirá mais. Se essa caixa de seleção for desmarcada, o fluxo de trabalho do Neuron continuará progredindo; por exemplo, isso pode ser útil para gerar um alerta de confirmação positiva de que um problema não foi detectado.
- Ação: os estágios de ação utilizam a Malha de Automação para realizar ações como enviar e-mail ou executar PowerShell personalizado nos dispositivos do usuário. Algumas ações aceitam o uso de variáveis. Consulte Variáveis para obter detalhes.
- Comum: inclui:
- Filtrar resultados: filtra as informações capturadas na consulta, conforme definido pelas propriedades do filtro. Consulte Filtro para obter detalhes.
- Alertas de Neuron: concebido para gerar alertas na página inicial do Neurons.
- Personalizado: utilize Ação Bash, JavaScript Personalizado, Ação e Consulta do PowerShell e osquery para criar ações e consultas personalizadas. Todos os estágios personalizados criados em Biblioteca > Editor de Estágio aparecem aqui depois de instalados.
Exemplos de como usar osquery e PowerShell estão disponíveis em Exemplos Avançados de Fluxos de Trabalho de Neuron.
Espaço de trabalho
Arraste estágios até a área de trabalho para construir o fluxo de trabalho do Neuron. Clique em um estágio para mostrar as seguintes opções:
clique para remover o estágio do Neuron.
clique para adicionar um conector a outro estágio.
clique para desfazer a conexão entre os estágios.
Configurações do Estágio
Quando você arrasta um estágio para a área de trabalho e ele fica destacado, o painel Configurações do Estágio se abre; use os parâmetros para configurar e personalizar cada estágio.
Clique em Informações do estágio para ver a descrição dele e todas as propriedades associadas. Essas informações podem ser usadas como critérios para filtrar os resultados da consulta.
Conexão
Cada estágio deve ser conectado a outro estágio para que o fluxo de trabalho do Neuron possa ser executado. Destaque um estágio, clique nas setas e arraste-as para o estágio ao qual deseja conectá-las. Abre-se o painel Conexão, onde você pode personalizar o tipo e o estilo de conexão e a espessura e o estilo da linha. Você também pode alterar a cor e adicionar um rótulo.
Filtro
Você pode filtrar os resultados da consulta com base em propriedades personalizáveis. Quando você conecta um estágio de Consulta pré-definido a um Filtro, a lista suspensa Propriedade apresenta todas as propriedades disponíveis que podem ser selecionadas. Para visualizar detalhes das propriedades, vá ao painel Configurações do Estágio na consulta e selecione Informações do Estágio.
Você também pode usar a funcionalidade Visualizar Consulta para avaliar todos os dispositivos de destino e usar a tabela de resultados para ver o formato e o intervalo de valores que podem ser filtrados.
Consultas personalizadas, como osquery, PowerShell e BASH, não preenchem automaticamente as propriedades do filtro – elas devem ser inseridas manualmente, com base nos nomes das colunas retornados pela consulta (ou exibidos em Visualizar Consulta).
Você pode juntar várias consultas em sequência. Se isso for feito, todos os resultados serão combinados e ficarão disponíveis para serem filtrados ou usados em estágios de ação, tais como Enviar E-mail e Criar ticket ISM. Você pode alterar o comportamento de comparação do filtro conectado para que ele aplique a lógica AND (E) ou OR (OU) para determinar os resultados.
Variáveis
Variáveis podem ser usadas para passar informações entre estágios ou passar a saída de uma ação para outra ação. As variáveis podem ser usadas nos seguintes estágios:
- Alerta de Neurons
- Enviar E-mail
- Criar Ticket (ISM)
Inserindo variáveis
Para inserir uma variável, abra as Configurações do Estágio referentes ao estágio desejado; Alerta de Neurons, Enviar E-mail, Criar Ticket (ISM). Nos campos pertinentes, use o atalho (Ctrl+Space) no teclado para abrir a lista de variáveis disponíveis e selecione aquela que deseja usar:
- Nome do Neuron: [[Workflow.Name]] - o nome do Neuron, p. ex., Software Proibido
- Nome do Grupo: [[Workflow.Assistant]] - o nome da categoria de Neurons em que o Neuron está, p. ex., Conformidade
- URL do Neuron: [[Workflow.Url]] - link para a instância de execução exclusiva do Neuron
- Usuário de Iniciação: [[Initiation.User]] - o nome do usuário que executou a instância manual
- ID do Usuário de Iniciação: [[Initiation.UserId]] - o ID do usuário que executou a instância manual
- Todos os Nomes de Dispositivo: ${Ivanti.Devices} - lista dos nomes de dispositivo retornados pela consulta, separados por vírgula
- Todo os Dados de Dispositivo: ${Ivanti.Results} - lista de todos os dados de dispositivo retornados pela consulta
- Contagem de Dispositivos: ${Ivanti.Results.length} - o número de dispositivos retornados pela consulta
- Cobertura - Responderam: o número de dispositivos que responderam
- Cobertura - Erros: o número de dispositivos que não responderam, com erros
- Cobertura - Percentual: o percentual dos dispositivos que responderam
Existem modelos já prontos que utilizam as variáveis. Para requisitos mais complexos, os campos em Alertas de Neurons e E-mails suportam javascript, mas com uso handlebarsjs.
Como exemplo, para retornar uma lista de dispositivos em um e-mail, você pode usar o seguinte:
<ul class="devicelist">
{{#each Ivanti.Results}}
<li>{{this.deviceName}}</li>
{{/each}}
</ul>
Gerenciando erros
Idealmente, todos os Neurons sempre serão executados com êxito em todos os dispositivos selecionados. No entanto, às vezes nem tudo dará certo. Os fluxos de trabalho dos Neurons incluem alguns recursos para melhorar a taxa de sucesso, e você pode adotar certas decisões de design e configurações para melhorar essa taxa e ajudar a gerenciar os erros que venham a acontecer.
Tempos limite
Deve haver um equilíbrio entre esperar a conclusão do fluxo de trabalho e não deixá-lo continuar por muito tempo depois que tiver falhado. Tempos limite apropriados são aplicados a cada estágio do fluxo de trabalho. Estágios de consulta têm tempo limite de 15 segundos; as ações, 5 minutos; e as ações direcionadas, 25 minutos.
Ignorando execuções
As execuções agendadas começam apenas se a execução anterior foi concluída. O Log de Execução do Neuron indica uma execução ignorada com .
Ramificação de erro
Quando um estágio é executado, o fluxo de trabalho registra em quais dispositivos o ele foi bem-sucedido ou fracassou. Você pode ver esses resultados na Saída do Estágio. Se o estágio for bem-sucedido em apenas alguns dos dispositivos de destino, tanto o estágio quanto a execução serão marcados como parcialmente bem-sucedidos , e o fluxo de trabalho progredirá apenas nos dispositivos em que o estágio teve êxito. Você pode melhorar o design do fluxo de trabalho adicionando ramificações de erro para lidar mais proativamente com essa situação.
Para adicionar uma ramificação de erro:
- Abra o fluxo de trabalho desejado.
- No painel Meus Estágios, na seção Comum, adicione um estágio Filtrar Resultados abaixo de um estágio Ação.
- Conecte o estágio Ação ao estágio Filtrar Resultados.
- Clique no estágio Filtrar Resultados.
- No painel Configurações do Estágio, defina Lógica como E, Propriedade como Status da Ação, Comparação como Igual a e Valor como Falhou.
- Conecte um estágio Filtrar Resultados semelhante ao mesmo estágio Ação, mas com Valor definido como Concluído.
Agora você tem uma ramificação de erro que separa dispositivos bem-sucedidos de dispositivos com falha. - Abaixo do estágio Filtrar Resultados com o parâmetro Concluído, conclua o design do fluxo de trabalho.
- Abaixo do estágio Filtrar Resultados com o parâmetro Falhou, adicione o estágio de ação Enviar E-mail para relatar as falhas, ou adicione outra ação apropriada para tentar continuar o fluxo de trabalho.
Exemplos Avançados de Fluxos de Trabalho de Neuron
Os exemplos a seguir demonstram como construir o fluxo de trabalho do Neuron e usar as consultas e ações personalizadas:
A parametrização de consultas existe para que seja mais fácil reaproveitá-las nos Neurons. Ela é suportada ao usar o editor e salvar como um nó reutilizável da biblioteca:
O osquery usa a sintaxe do SQL, por exemplo, select * from processes where name = myprocess.exe
O que é familiar para a maioria dos administradores.
Se usarmos a consulta acima como exemplo, podemos especificá-la como:
select * from processes where name = __Name__
Os sublinhados duplos indicam ao Neurons que isso deve ser parametrizado. Então, após salvar e selecionar a consulta, haverá uma caixa de entrada Nome no painel de configurações:
Você também pode preencher uma lista suspensa de valores a serem escolhidos inserindo uma variável options
No editor, digite op
e pressione tab:
Substitua pelo texto e as opções de sua preferência e salve como um nó de biblioteca reutilizável:
Essas opções agora serão disponibilizadas em uma lista suspensa:
As consultas do osquery são agrupadas em tabelas, mas e se você quiser combinar resultados de várias tabelas em uma consulta?
Exemplo: você quer usar a tabela de registros para recuperar o valor de um registro:
Mas você também quer o fornecedor e o modelo de hardware a partir de system_info
Digite a osquery no Neurons assim:
SELECT hardware_vendor,hardware_model,
(
SELECT data FROM registry
WHERE key = 'HKEY_LOCAL_MACHINE\Software\Ivanti\Neurons'
)
temp
FROM system_info
Isso retorna da seguinte forma:
Você pode então conectar um estágio Filtrar Resultados para realizar uma ação quando o valor do registro corresponder a um determinado valor:
E, opcionalmente, filtrar o fornecedor de hardware
Ou usar os resultados para criar uma tabela formatada num e-mail:
Para fazer isso:
- Comece com o modelo Pouco Espaço em Disco.
- Edite a seção nas tags <th> com os nomes de coluna desejados.
- Edite a seção com as tags <td> correspondentes para usar os nomes das colunas da visualização, sempre prefixados com this. Comece com minúsculas, sem espaços entre as palavras, e as palavras subsequentes com iniciais maiúsculas.
por exemplo Se a coluna se chamar Meus Dispositivos, na seção <td>, ficaria this.meusDispositivos
É possível usar o PowerShell para consultar dispositivos (somente Windows). No entanto, a consulta precisa retornar resultados em uma matriz e, em seguida, ser canalizada para ConvertTo-Json.
Exemplo: Get-TimeZone retornaria resultados em uma matriz como esta:
PS C:\Users\Joe.Bloggs> get-timezone
Id : GMT Standard Time
DisplayName : (UTC+00:00) Dublin, Edinburgh, Lisbon, London
StandardName : GMT Standard Time
DaylightName : GMT Summer Time
BaseUtcOffset : 00:00:00
SupportsDaylightSavingTime : True
Mas, quando canalizado para ConvertTo-Json (PowerShell 3.0 e superior), fica assim:
PS C:\Users\Joe.Bloggs> get-timezone | convertto-json
{
"Id": "GMT Standard Time",
"DisplayName": "(UTC+00:00) Dublin, Edinburgh, Lisbon, London",
"StandardName": "GMT Standard Time",
"DaylightName": "GMT Summer Time",
"BaseUtcOffset": {
"Ticks": 0,
"Days": 0,
"Hours": 0,
"Milliseconds": 0,
"Minutes": 0,
"Seconds": 0,
"TotalDays": 0,
"TotalHours": 0,
"TotalMilliseconds": 0,
"TotalMinutes": 0,
"TotalSeconds": 0
},
"SupportsDaylightSavingTime": true
Isso permite que o Neurons monte os dados numa tabela:
Dica: se Visualizar Consulta não estiver funcionando – verifique se todos os dispositivos no grupo são capazes de retornar a consulta (dispositivos Windows com, no mínimo, PowerShell 3). Você pode escolher o Grupo de Destino nas Configurações do Neuron .
Depois de obter os resultados da consulta, você pode conectar um estágio de filtro para especificar quais condições precisam ser atendidas para que o estágio continue. Nota: será preciso digitar manualmente os nomes das colunas como Propriedades do filtro:
O Neurons pode executar o PowerShell em pontos de extremidade utilizando o agente Ivanti Neurons e o mecanismo da malha de automação. As ações podem ser executadas no contexto de segurança do usuário final ou como Sistema.
Assim como no osquery, as ações do PowerShell também podem ser parametrizadas, por exemplo, se você quiser uma ação reutilizável que possa desinstalar uma atualização problemática do Windows, poderá usar o editor do PowerShell para criar um nó de biblioteca reutilizável com o seguinte código:
wusa /uninstall /kb:__KBNumber__/quiet /norestart
__KBNumber__
seria parametrizado como uma opção em que é possível digitar apenas o número da atualização a ser removida:
Você pode remover ações e consultas personalizadas do editor excluindo-as da biblioteca:
A consulta/ação do BASH funciona exatamente da mesma maneira que o PowerShell, com a exceção de que o Bash não tem um recurso ConvertTo-Json integrado e, portanto, você deve criar a consulta para retornar resultados em JSON, a fim de que eles possam ser interpretados pelo Neurons.