Notificações externas

Aplica-se a: Configuration Manager (branch atual)

Em um ambiente de TI complexo, você pode ter um sistema de automação como os Aplicativos Lógicos do Azure. Os clientes usam esses sistemas para definir e controlar fluxos de trabalho automatizados para integrar vários sistemas. Você pode integrar Configuration Manager a um sistema de automação separado por meio das APIs SDK do produto. Mas esse processo pode ser complexo e desafiador para profissionais de TI sem uma experiência de desenvolvimento de software.

A partir da versão 2107, você pode habilitar o site a enviar notificações para um sistema ou aplicativo externo. Esse recurso simplifica o processo usando um método baseado em serviço Web. Você configura assinaturas para enviar essas notificações. Essas notificações são uma resposta a eventos específicos e definidos à medida que ocorrem. Por exemplo, status regras de filtro de mensagem.

Observação

O sistema externo ou aplicativo define e fornece os métodos que esse recurso chama.

Quando você configura esse recurso, o site abre um canal de comunicação com o sistema externo. Esse sistema pode iniciar um fluxo de trabalho complexo ou uma ação que não existe no Configuration Manager.

A partir da versão 2111, use o console Configuration Manager para criar ou editar assinaturas para notificações externas. Este artigo agora se concentra nessa experiência. Se você estiver usando a versão 2107, consulte Configuration Manager versão 2107.

Pré-requisitos

  • Crie a assinatura no site de nível superior da hierarquia. Este site é um site primário autônomo ou um CAS (site de administração central). Você pode exibir e modificar uma assinatura existente em qualquer site em uma hierarquia.

  • O ponto de conexão de serviço do site precisa estar no modo online. Para obter mais informações, consulte Sobre o ponto de conexão de serviço.

  • Atualmente, esse recurso dá suporte apenas aos Aplicativos Lógicos do Azure como o sistema externo. Uma assinatura ativa do Azure com direitos para criar um aplicativo lógico é necessária.

    O ponto de conexão de serviço precisa se comunicar com o serviço de notificação, por exemplo, aplicativos lógicos do Azure. Para obter mais informações, consulte Requisitos de acesso à Internet.

  • Para criar um tipo de evento para uma solicitação de aprovação de aplicativo, o site precisa de um aplicativo que exija aprovação e seja implantado em uma coleção de usuários. Para obter mais informações, confira Implantar aplicativos e aprovar aplicativos.

Permissões

Você pode configurar as seguintes permissões para o objeto NotificationSubscription : Ler, Excluir, Modificar, Criar.

  • A função de segurança padrão do administrador completo tem essas permissões.
  • A função de segurança padrão do analista Somente leitura tem a permissão Ler .

Na versão 2107, os usuários também precisam do escopo All security. Na versão 2111 e posterior, você não pode escopo dos objetos de assinatura. Se necessário, você pode usar escopos no objeto Site , aos quais os usuários precisam de pelo menos permissão de leitura.

Outras permissões podem ser necessárias para funções personalizadas. Use a tabela a seguir para entender o que é necessário:

Ação Alertas:
Read
Site:
Read
Notificar:
Read
Notificar:
Modificar
Notificar:
Criar
Notificar:
Excluir
Site:
Gerenciar o SFR
Exibir assinatura X X
Modificar assinatura X X X X
Criar assinatura Observação 1 X X X X
Excluir assinatura X X X
Criar um novo SFR X X X Observação 2 Observação 2 X
Adicionar SFR existente X X X Observação 2 Observação 2
Adicionar aprovação do aplicativo X X X Observação 2 Observação 2

A tabela acima usa a seguinte abreviação:

  • Notificar: objetos de assinatura de notificação
  • SFR: regra de filtro de status

Observação 1: Site de nível superior na hierarquia

Crie a assinatura no site de nível superior da hierarquia. Este site é um site primário autônomo ou um CAS. Você pode exibir e modificar uma assinatura existente em qualquer site em uma hierarquia.

Observação 2: modificar e criar permissões para ações de evento

Ao gerenciar eventos na assinatura, as permissões para Modificar ou Criar no objeto de assinatura de notificação dependem se você precisa modificar ou criar o evento. Por exemplo, se você tiver a permissão Criar, poderá adicionar uma regra de filtro status à assinatura. Se você não tiver a permissão Modificar , não poderá fazer alterações nos eventos de assinatura.

Criar um aplicativo lógico do Azure e um fluxo de trabalho

Use o processo a seguir para criar um aplicativo de exemplo nos Aplicativos Lógicos do Azure para receber a notificação de Configuration Manager.

Observação

Esse processo é fornecido como um exemplo para ajudá-lo a começar. Não se destina ao uso da produção.

  1. Entre no portal do Azure.

  2. Na caixa de pesquisa do Azure, insira logic appse selecione Aplicativos Lógicos.

  3. Selecione Adicionar e escolha Consumo. Essa ação cria um novo aplicativo lógico.

  4. Na guia Noções básicas, especifique os detalhes do projeto conforme necessário para seu ambiente: nome da assinatura, grupo de recursos, nome do aplicativo lógico e região.

  5. Selecione Rever + criar. Na página de validação, confirme os detalhes fornecidos e selecione Criar.

  6. Em Próximas etapas, selecione Ir para o recurso.

  7. Na seção Iniciar com um gatilho comum, selecione Quando uma solicitação HTTP for recebida.

  8. Na parte inferior do editor de gatilho, selecione Usar conteúdo de exemplo para gerar esquema.

  9. Cole o seguinte conteúdo de exemplo:

    {
        "EventID":0,
        "EventName":"",
        "SiteCode":"",
        "ServerName":"",
        "MessageID":0,
        "Source":"",
        "EventPayload":""
    }
    
  10. Selecione Concluído e, em seguida, selecione Salvar.

  11. Copie a URL gerada para o aplicativo lógico. Você usará essa URL mais tarde ao criar a assinatura no Configuration Manager.

    Observação

    A URL do Azure para o aplicativo lógico inclui a chave secreta. Quando salvo em Configuration Manager, ele é protegido da mesma forma que qualquer outra senha ou chave secreta. Se o ambiente usar um servidor proxy ou outro dispositivo de inspeção de rede, há o risco de que ele faça log dessa URL e exponha a chave secreta. Controle o acesso a esses sistemas e esteja preparado para renovar a chave secreta do aplicativo lógico no portal do Azure. Você também pode definir uma data de validade para a chave secreta no portal do Azure. Para obter mais informações, consulte Proteger seus aplicativos lógicos.

  12. Para adicionar uma nova etapa no designer, selecione + Nova Etapa. Escolha uma ação apropriada quando receber uma notificação de Configuration Manager. Por exemplo:

    Entre se necessário e conclua as informações necessárias para a ação. Para obter mais informações, confira o início rápido Criar aplicativos lógicos na documentação dos Aplicativos Lógicos do Azure.

Esquema de notificação

Essas notificações usam o seguinte esquema padronizado:

{
    "properties": {
        "EventID": {
            "type": "integer"
        },
        "EventName": {
            "type": "string"
        },
        "EventPayload": {
            "type": "string"
        },
        "MessageID": {
            "type": "string"
        },
        "ServerName": {
            "type": "string"
        },
        "SiteCode": {
            "type": "string"
        },
        "Source": {
            "type": "string"
        }
    },
    "type": "object"
}

Criar um evento

Há dois tipos de eventos com suporte no momento:

  • O site gera uma mensagem status que corresponde às condições especificadas em uma regra de filtro status para notificação externa. Você pode criar uma nova regra ou usar uma existente.

  • Um usuário solicita aprovação para um aplicativo no Centro de Software.

Observação

Em uma hierarquia, o escopo dos eventos depende do tipo de evento:

  • Os eventos de aprovação do aplicativo só acontecem em sites primários.
  • As regras de filtro de status se aplicam ao site em que você cria a regra usando o assistente criar evento de notificação de serviço externo.
    • Se você executar o assistente para criar o evento enquanto estiver conectado ao CAS, ele só disparará em eventos correspondentes do CAS.
    • Para assinar os eventos gerados por um site primário filho, conecte-se ao site primário. Modifique a assinatura de notificação para criar uma nova regra de filtro status para o site primário filho.

Use o seguinte processo para criar um evento:

  1. No console Configuration Manager, conecte-se ao site de nível superior da hierarquia. Este site é um site primário autônomo ou um CAS.

  2. Acesse o workspace Monitoramento , expanda Alertas e selecione o nó notificações de serviço externo .

  3. Na faixa de opções, selecione Criar assinatura.

  4. Na janela Nova Assinatura, especifique um Nome para a assinatura identificá-la no console Configuration Manager. O comprimento máximo é de 254 caracteres. Opcionalmente, adicione uma Descrição.

  5. Para o valor de URL de serviço externo , cole a URL do Aplicativo Lógico do Azure copiado anteriormente.

  6. Selecione o asterisco dourado para adicionar um novo evento à assinatura.

    1. No assistente Criar Evento de Notificação de Serviço Externo, na página Tipo de evento, selecione um dos seguintes tipos de evento:

      • Nova regra de filtro status: crie uma nova regra de filtro de status a ser usada para este evento. Especifique um nome para a regra de filtro status e configure os critérios de filtro. Para obter mais informações sobre critérios para status regras de mensagem, consulte Usar o sistema de status.

        Importante

        Tenha cuidado com o tipo de status regra de filtro que você cria. Para notificações externas, o site pode processar 300 mensagens status a cada cinco minutos. Se sua regra permitir mais mensagens do que esse limite, ela causará um backlog no site. Crie regras com filtros estreitos para cenários específicos. Evite regras genéricas que permitem muitas mensagens.

      • Regra de filtro de status existente: reutilize uma regra de filtro status para notificação externa que já existe. Ele não exibe todas as status regras de filtro, apenas as regras que você criou usando esse assistente.

      • Usuário envia solicitação de aplicativo: envie uma notificação externa para solicitações de aprovação do aplicativo.

Gerenciar eventos

Depois de criar uma assinatura, use o nó notificações de serviço externo para fazer as seguintes ações:

  • Propriedades: edite o nome, a descrição ou os eventos de uma assinatura. Você não pode editar a URL de serviço externo.

  • Excluir: remover uma assinatura.

Observação

Você pode exibir e modificar uma assinatura existente em qualquer site em uma hierarquia.

Quando você seleciona uma assinatura, o painel de detalhes mostra informações sobre os eventos ocorridos.

Disparar um evento

O processo para disparar um evento depende do tipo de assinatura:

Monitorar o fluxo de trabalho

Console Configuration Manager

A partir da versão 2309, quando os Aplicativos Lógicos do Azure geram notificações ou alertas relacionados a eventos ou condições específicas, Configuration Manager agora podem capturar e exibir essas notificações. Essa integração permite o monitoramento de notificações do Aplicativo Lógico do Azure diretamente no console Configuration Manager, fornecendo um local centralizado para acompanhar eventos críticos, tomar as ações apropriadas e manter um alto nível de eficiência operacional. 

Para usar esse recurso, é necessário um aplicativo Web Microsoft Entra válido. Implante os serviços do Azure para Gerenciamento de Serviços de Administração em Administração\Visão Geral\Serviços de Nuvem\Serviços do Azure. Se o serviço já estiver implantado, o administrador poderá usar o aplicativo Web existente para exibir Executar detalhes do aplicativo lógico do Azure.

Para obter mais informações, consulte Configurar serviços do Azure para uso com Configuration Manager.

Use o seguinte processo para exibir Detalhes de execução da assinatura:

  1. No console Configuration Manager clique em Monitoramento.
  2. No workspace Monitoramento, clique em Notificações de Serviço Externo e selecione a assinatura desejada.
  3. Clique em Mostrar Detalhes.
  4. Na caixa de diálogo, selecione o Ambiente do Azure, Microsoft Entra nome do locatário na lista suspensa e SignIn usando sua Conta de Administração do Azure.
  5. Selecione a ID da Assinatura e insira o nome do grupo de recursos e o nome do fluxo de trabalho .
  6. Clique no botão Obter Detalhes de Execução para exibir os Detalhes de Execução.

Captura de tela do assistente Executar Detalhes no console Configuration Manager.

Azure Portal

Em cinco minutos, o evento dispara o fluxo de trabalho do aplicativo lógico. Verifique a status do fluxo de trabalho no portal do Azure. Navegue até a página Histórico de execuções do aplicativo lógico.

Para obter mais informações, consulte Monitorar executar status, examinar o histórico de gatilhos e configurar alertas para aplicativos lógicos do Azure.

Solução de problemas

Use os seguintes arquivos de log Configuration Manager no servidor do site para ajudar a solucionar esse processo:

  • ExternalNotificationsWorker.log: verifique se a fila foi processada e as notificações são enviadas para o sistema externo.
  • statmgr.log: verifique se as regras de filtro status foram processadas sem erros

Problemas conhecidos

Se você criar uma regra de filtro status, verá-a na lista de regras de filtro de status do site no console Configuration Manager. Se você fizer uma alteração na guia Ações das propriedades da regra, a notificação externa não funcionará.

Depois de recuperar um CAS (site de administração central ), exclua e recrie a assinatura.

Dica

Antes de remover um CAS, recrie as assinaturas no site primário filho.

Configuration Manager versão 2107

Importante

Esta seção e o script do PowerShell só se aplicam à versão 2107. Na versão 2111 e posterior, use o console Configuration Manager para criar e gerenciar eventos.

Outros pré-requisitos para a versão 2107

Para criar os objetos no Configuration Manager versão 2107, você precisa usar o script do PowerShell SetupExternalServiceNotifications.ps1. Use o seguinte exemplo de script para obter corretamente o script do PowerShell a ser usado para este recurso:

$FileName = ".\SetupExternalServiceNotifications.ps1"
Invoke-WebRequest https://aka.ms/cmextnotificationscript -OutFile $FileName
(Get-Content $FileName -Raw).Replace("`n","`r`n") | Set-Content $FileName -Force
(Get-Content $FileName -Raw).TrimEnd("`r`n") | Set-Content $FileName -Force

Observação

SetupExternalServiceNotifications.ps1 é assinado digitalmente pela Microsoft. Este exemplo de script baixa o arquivo e corrige as quebras de linha para preservar a assinatura digital.

Criar um evento na versão 2107

Há dois tipos de eventos com suporte na versão 2107:

  • O site gera uma mensagem de status que corresponde às condições especificadas em uma regra de filtro status.

  • Um usuário solicita aprovação para um aplicativo no Centro de Software.

Criar um evento de mensagem status na versão 2107

  1. No servidor do site, execute SetupExternalServiceNotifications.ps1. Como você está executando no servidor do site, insira y para continuar.

  2. Selecione a opção 2 para criar uma nova regra de filtro de status.

  3. Especifique um nome para a nova regra de filtro status.

  4. Selecione critérios de correspondência de mensagens para a regra e especifique valores a serem correspondidos. Especifique 0 para não usar um critério.

    Os seguintes critérios estão disponíveis:

    • Fonte: Cliente, Provedor de SMS, Servidor de Site
    • Código do site
    • Sistema
    • Componente
    • Tipo de mensagem: Marco, Detalhe, Auditoria
    • Gravidade: informativo, aviso, erro
    • ID da mensagem
    • Propriedade
    • Valor da propriedade

    Para obter mais informações sobre critérios para status regras de mensagem, consulte Usar o sistema de status.

    Importante

    Tenha cuidado com o tipo de status regra de filtro que você cria. Para notificações externas, o site pode processar 300 mensagens status a cada cinco minutos. Se sua regra permitir mais mensagens do que esse limite, ela causará um backlog no site. Crie regras com filtros estreitos para cenários específicos. Evite regras genéricas que permitem muitas mensagens.

  5. Execute novamente o script do PowerShell. Selecione a opção 3 para criar uma nova assinatura.

  6. Especifique um nome e uma descrição para a assinatura. Em seguida, especifique a URL do aplicativo lógico que você copiou anteriormente do portal do Azure.

  7. Selecione a nova regra de filtro de status.

  8. Selecione 0 para sair do script.

Criar um evento de aprovação de aplicativo na versão 2107

Observação

Esse tipo de evento requer um aplicativo que requer aprovação e é implantado em uma coleção de usuários. Para obter mais informações, confira Implantar aplicativos e aprovar aplicativos.

  1. No servidor do site, execute SetupExternalServiceNotifications.ps1. Como você está executando no servidor do site, insira y para continuar.

  2. Selecione a opção 3 para criar uma nova assinatura.

  3. Especifique um nome e uma descrição para a assinatura. Em seguida, especifique a URL do aplicativo lógico que você copiou anteriormente do portal do Azure.

  4. Selecione o evento apropriado para uma solicitação de aplicativo.

  5. Selecione 0 para sair do script.

Remover uma assinatura na versão 2107

Se você precisar excluir uma assinatura, use o seguinte processo:

  1. Execute o script SetupExternalServiceNotifications.ps1 com a opção 1 de listar as assinaturas disponíveis. Observe a ID da assinatura, que é um valor inteiro.

  2. Use a API notificationSubscription do serviço de administração. Faça uma chamada DELETE para o URI https://<SMSProviderFQDN>/AdminService/v1.0/NotificationSubscription/<Subscription_ID>.

    Para obter mais informações, consulte Como usar o serviço de administração no Configuration Manager.

Depois de remover a assinatura, o site não envia notificações para o sistema externo.

Uso de script na versão 2107

Quando você executa SetupExternalServiceNotifications.ps1, ele detecta se ele está em execução em um servidor de site:

  • Y: Continuar no servidor atual
  • N: especifique o FQDN de um servidor de site a ser usado

Se o script não detectar um servidor de site, ele solicitará um FQDN.

Em seguida, as ações a seguir estão disponíveis:

  • 0: Ignorar/continuar
  • 1: listar assinaturas disponíveis
  • 2: criar uma regra de filtro status para expor mensagens status
  • 3: criar uma assinatura. Essa opção só está disponível para o site de nível superior.

Observação

Esse script só tem suporte para sites que executam a versão 2107 ou posterior.

Próximas etapas

Usar o sistema de status

Configurar alertas