Partilhar via


Monitorar o Azure AD B2C com o Azure Monitor

Use o Azure Monitor para rotear logs de entrada e auditoria do Azure Ative Directory B2C (Azure AD B2C) para diferentes soluções de monitoramento. Em seguida, pode retê-los para utilização a longo prazo ou integrá-los com ferramentas de gestão de informações e eventos de segurança (SIEM) de terceiros para obter informações sobre o ambiente.

Você pode rotear eventos de log para:

Azure Monitor

Quando você planeja transferir logs do Azure AD B2C para diferentes soluções de monitoramento ou repositório, considere que os logs do Azure AD B2C contêm dados pessoais. Ao processar esses dados, certifique-se de que utiliza medidas de segurança adequadas sobre os dados pessoais. Inclui a proteção contra o tratamento não autorizado ou ilícito, através de medidas técnicas ou organizativas adequadas.

Neste artigo, você aprenderá a transferir os logs para um espaço de trabalho do Azure Log Analytics. Em seguida, você pode criar um painel ou criar alertas baseados nas atividades dos usuários do Azure AD B2C.

Assista a este vídeo para saber como configurar o monitoramento para o Azure AD B2C usando o Azure Monitor.

Descrição geral da implementação

O Azure AD B2C usa o monitoramento do Microsoft Entra. Ao contrário dos locatários do Microsoft Entra, um locatário do Azure AD B2C não pode ter uma assinatura associada a ele. Portanto, precisamos tomar medidas adicionais para habilitar a integração entre o Azure AD B2C e o Log Analytics, que é para onde enviamos os logs. Para habilitar as configurações de Diagnóstico no Microsoft Entra ID em seu locatário do Azure AD B2C, use o Azure Lighthouse para delegar um recurso, o que permite que seu Azure AD B2C (o Provedor de Serviços) gerencie um recurso do Microsoft Entra ID (o Cliente).

Gorjeta

O Azure Lighthouse normalmente é usado para gerenciar recursos para vários clientes. No entanto, ele também pode ser usado para gerenciar recursos dentro de uma empresa que tem vários locatários do Microsoft Entra próprios, que é o que estamos fazendo aqui, exceto que estamos apenas delegando o gerenciamento de um único grupo de recursos.

Depois de concluir as etapas neste artigo, você terá criado um novo grupo de recursos (aqui chamado azure-ad-b2c-monitor) e terá acesso a esse mesmo grupo de recursos que contém o espaço de trabalho do Log Analytics em seu portal do Azure AD B2C. Você também poderá transferir os logs do Azure AD B2C para seu espaço de trabalho do Log Analytics.

Durante essa implantação, você autorizará um usuário ou grupo em seu diretório do Azure AD B2C a configurar a instância do espaço de trabalho do Log Analytics no locatário que contém sua assinatura do Azure. Para criar a autorização, implante um modelo do Azure Resource Manager na assinatura que contém o espaço de trabalho do Log Analytics.

O diagrama a seguir mostra os componentes que você configurará em seus locatários do Microsoft Entra ID e do Azure AD B2C.

Resource group projection

Durante essa implantação, você configurará seu locatário do Azure AD B2C onde os logs são gerados. Você também configurará o locatário do Microsoft Entra onde o espaço de trabalho do Log Analytics será hospedado. As contas do Azure AD B2C usadas (como sua conta de administrador) devem receber a função de Administrador Global no locatário do Azure AD B2C. A conta do Microsoft Entra que você usará para executar a implantação deve receber a função de Proprietário na assinatura do Microsoft Entra. Também é importante certificar-se de que você está conectado ao diretório correto à medida que conclui cada etapa, conforme descrito.

Em resumo, você usará o Azure Lighthouse para permitir que um usuário ou grupo em seu locatário do Azure AD B2C gerencie um grupo de recursos em uma assinatura associada a um locatário diferente (o locatário do Microsoft Entra). Depois que essa autorização for concluída, o espaço de trabalho de assinatura e análise de log poderá ser selecionado como destino nas Configurações de diagnóstico no Azure AD B2C.

Pré-requisitos

1. Criar ou escolher grupo de recursos

Primeiro, crie ou escolha um grupo de recursos que contenha o espaço de trabalho de destino do Log Analytics que receberá dados do Azure AD B2C. Você especificará o nome do grupo de recursos ao implantar o modelo do Azure Resource Manager.

  1. Inicie sessão no portal do Azure.
  2. Se você tiver acesso a vários locatários, selecione o ícone Configurações no menu superior para alternar para seu locatário do Microsoft Entra ID no menu Diretórios + assinaturas .
  3. Crie um grupo de recursos ou escolha um existente. Este exemplo usa um grupo de recursos chamado azure-ad-b2c-monitor.

2. Criar um espaço de trabalho do Log Analytics

Um espaço de trabalho do Log Analytics é um ambiente exclusivo para dados de log do Azure Monitor. Você usará esse espaço de trabalho do Log Analytics para coletar dados de logs de auditoria do Azure AD B2C e, em seguida, visualizá-los com consultas e pastas de trabalho ou criar alertas.

  1. Inicie sessão no portal do Azure.
  2. Se você tiver acesso a vários locatários, selecione o ícone Configurações no menu superior para alternar para seu locatário do Microsoft Entra ID no menu Diretórios + assinaturas .
  3. Crie um espaço de trabalho do Log Analytics. Este exemplo usa um espaço de trabalho do Log Analytics chamado AzureAdB2C, em um grupo de recursos chamado azure-ad-b2c-monitor.

3. Delegar a gestão de recursos

Nesta etapa, você escolhe seu locatário do Azure AD B2C como um provedor de serviços. Você também define as autorizações necessárias para atribuir as funções internas apropriadas do Azure a grupos em seu locatário do Microsoft Entra.

3.1 Obter sua ID de locatário do Azure AD B2C

Primeiro, obtenha a ID do Locatário do seu diretório do Azure AD B2C (também conhecido como ID do diretório).

  1. Inicie sessão no portal do Azure.
  2. Se você tiver acesso a vários locatários, selecione o ícone Configurações no menu superior para alternar para seu locatário do Azure AD B2C no menu Diretórios + assinaturas .
  3. Selecione Microsoft Entra ID, selecione Visão geral.
  4. Registre a ID do locatário.

3.2 Selecione um grupo de segurança

Agora, selecione um grupo ou usuário do Azure AD B2C ao qual você deseja dar permissão ao grupo de recursos criado anteriormente no diretório que contém sua assinatura.

Para facilitar o gerenciamento, recomendamos o uso de grupos de usuários do Microsoft Entra para cada função, permitindo que você adicione ou remova usuários individuais ao grupo em vez de atribuir permissões diretamente a esse usuário. Neste passo a passo, adicionaremos um grupo de segurança.

Importante

Para adicionar permissões para um grupo do Microsoft Entra, o tipo de grupo deve ser definido como Segurança. Esta opção é selecionada quando o grupo é criado. Para obter mais informações, consulte Criar um grupo básico e adicionar membros usando o Microsoft Entra ID.

  1. Com a ID do Microsoft Entra ainda selecionada no diretório do Azure AD B2C, selecione Grupos e, em seguida, selecione um grupo. Se não tiver um grupo existente, crie um grupo de Segurança e, em seguida, adicione membros. Para obter mais informações, siga o procedimento Criar um grupo básico e adicionar membros usando o Microsoft Entra ID.
  2. Selecione Visão geral e registre a ID do objeto do grupo.

3.3 Criar um modelo do Azure Resource Manager

Para criar a autorização e delegação personalizadas no Azure Lighthouse, usamos um modelo do Azure Resource Manager. Este modelo concede ao Azure AD B2C acesso ao grupo de recursos do Microsoft Entra, que você criou anteriormente, por exemplo, azure-ad-b2c-monitor. Implante o modelo a partir do exemplo do GitHub usando o botão Implantar no Azure, que abre o portal do Azure e permite configurar e implantar o modelo diretamente no portal. Para estas etapas, verifique se você está conectado ao locatário do Microsoft Entra (não ao locatário do Azure AD B2C).

  1. Inicie sessão no portal do Azure.

  2. Se você tiver acesso a vários locatários, selecione o ícone Configurações no menu superior para alternar para seu locatário do Microsoft Entra ID no menu Diretórios + assinaturas .

  3. Use o botão Implantar no Azure para abrir o portal do Azure e implantar o modelo diretamente no portal. Para obter mais informações, consulte criar um modelo do Azure Resource Manager.

    Deploy to Azure

  4. Na página Implantação personalizada, insira as seguintes informações:

    Campo Definição
    Subscrição Selecione o diretório que contém a assinatura do Azure onde o grupo de recursos azure-ad-b2c-monitor foi criado.
    Região Selecione a região onde o recurso será implantado.
    Nome da oferta do MSP Um nome a descrever esta definição. Por exemplo, o Monitoramento B2C do Azure AD. É o nome que será exibido no Azure Lighthouse. O Nome da Oferta MSP deve ser exclusivo na sua ID do Microsoft Entra. Para monitorar vários locatários do Azure AD B2C, use nomes diferentes.
    Descrição da Oferta Msp Uma breve descrição da sua oferta. Por exemplo, Habilita o Azure Monitor no Azure AD B2C.
    Gerenciado por ID de locatário A ID do Locatário do seu locatário do Azure AD B2C (também conhecida como ID do diretório).
    Autorizações Especifique uma matriz JSON de objetos que incluem o Microsoft Entra ID principalId, principalIdDisplayNamee Azure roleDefinitionId. A principalId é a ID do objeto do grupo ou usuário B2C que terá acesso aos recursos nesta assinatura do Azure. Para este passo a passo, especifique a ID do objeto do grupo que você registrou anteriormente. Para o , use o roleDefinitionIdvalor de função interno para a função de Colaborador, b24988ac-6180-42a0-ab88-20f7382dd24c.
    Nome Rg O nome do grupo de recursos criado anteriormente no locatário do Microsoft Entra. Por exemplo, azure-ad-b2c-monitor.

    O exemplo a seguir demonstra uma matriz Authorizations com um security group.

    [
      {
        "principalId": "<Replace with group's OBJECT ID>",
        "principalIdDisplayName": "Azure AD B2C tenant administrators",
        "roleDefinitionId": "b24988ac-6180-42a0-ab88-20f7382dd24c"
      }
    ]
    

Depois de implantar o modelo, pode levar alguns minutos (normalmente não mais do que cinco) para que a projeção de recursos seja concluída. Você pode verificar a implantação em seu locatário do Microsoft Entra e obter os detalhes da projeção de recursos. Para obter mais informações, consulte Exibir e gerenciar provedores de serviços.

4. Selecione a sua subscrição

Depois de implantar o modelo e aguardar alguns minutos até que a projeção de recursos seja concluída, siga estas etapas para associar sua assinatura ao diretório do Azure AD B2C.

Nota

Nas configurações do Portal | Página Diretórios + assinaturas, verifique se seus locatários do Azure AD B2C e do Microsoft Entra estão selecionados em Diretórios atuais + delegados.

  1. Saia do portal do Azure e entre novamente com sua conta administrativa do Azure AD B2C . Essa conta deve ser membro do grupo de segurança especificado na etapa Delegar gerenciamento de recursos. Sair e cantar novamente permite que suas credenciais de sessão sejam atualizadas na próxima etapa.

  2. Selecione o ícone Configurações na barra de ferramentas do portal.

  3. Nas configurações do Portal | Página Diretórios + assinaturas, na lista Nome do diretório, localize o diretório ID do Microsoft Entra que contém a assinatura do Azure e o grupo de recursos azure-ad-b2c-monitor que você criou e selecione Alternar.

  4. Verifique se você selecionou o diretório correto e se sua assinatura do Azure está listada e selecionada no filtro Assinatura padrão.

    Screenshot of the default subscription filter

5. Definir definições de diagnóstico

As configurações de diagnóstico definem para onde os logs e as métricas de um recurso devem ser enviados. Os destinos possíveis são:

Neste exemplo, usamos o espaço de trabalho do Log Analytics para criar um painel.

5.1 Criar configurações de diagnóstico

Você está pronto para criar configurações de diagnóstico no portal do Azure.

Para definir configurações de monitoramento para logs de atividade do Azure AD B2C:

  1. Entre no portal do Azure com sua conta administrativa do Azure AD B2C. Essa conta deve ser membro do grupo de segurança especificado na etapa Selecionar um grupo de segurança.

  2. Se você tiver acesso a vários locatários, selecione o ícone Configurações no menu superior para alternar para seu locatário do Azure AD B2C no menu Diretórios + assinaturas .

  3. Selecione Microsoft Entra ID

  4. Em Monitorização, selecione Definições de diagnóstico.

  5. Se houver configurações existentes para o recurso, você verá uma lista de configurações já configuradas. Selecione Adicionar configuração de diagnóstico para adicionar uma nova configuração ou selecione Editar configurações para editar uma configuração existente. Cada configuração não pode ter mais de um de cada um dos tipos de destino.

    Screenshot of the diagnostics settings pane in Azure portal.

  6. Dê um nome à sua configuração se ela ainda não tiver um.

  7. Selecione AuditLogs e SignInLogs.

  8. Selecione Enviar para o espaço de trabalho do Log Analytics e, em seguida:

    1. Em Subscrição, selecione a sua subscrição.
    2. Em Espaço de trabalho do Log Analytics, selecione o nome do espaço de trabalho criado anteriormente, como AzureAdB2C.

    Nota

    Atualmente, apenas as configurações de diagnóstico AuditLogs e SignInLogs são suportadas para locatários do Azure AD B2C.

  9. Selecione Guardar.

Nota

Pode levar até 15 minutos após a emissão de um evento para que ele apareça em um espaço de trabalho do Log Analytics. Além disso, saiba mais sobre as latências de relatórios do Ative Directory, que podem afetar a obsolescência dos dados e desempenhar um papel importante na geração de relatórios.

Se vir a mensagem de erro Para configurar as definições de Diagnóstico para utilizar o Azure Monitor para o diretório do Azure AD B2C, tem de configurar a gestão de recursos delegados, certifique-se de que inicia sessão com um utilizador que seja membro do grupo de segurança e selecione a sua subscrição.

6. Visualize os seus dados

Agora você pode configurar seu espaço de trabalho do Log Analytics para visualizar seus dados e configurar alertas. Essas configurações podem ser feitas no locatário do Microsoft Entra e no locatário do Azure AD B2C.

6.1 Criar uma consulta

As consultas de log ajudam você a usar totalmente o valor dos dados coletados nos Logs do Azure Monitor. Uma linguagem de consulta poderosa permite unir dados de várias tabelas, agregar grandes conjuntos de dados e executar operações complexas com código mínimo. Praticamente qualquer pergunta pode ser respondida e a análise realizada, desde que os dados de suporte tenham sido coletados e você entenda como construir a consulta certa. Para obter mais informações, consulte Introdução às consultas de log no Azure Monitor.

  1. Inicie sessão no portal do Azure.

  2. Se você tiver acesso a vários locatários, selecione o ícone Configurações no menu superior para alternar para seu locatário do Microsoft Entra ID no menu Diretórios + assinaturas .

  3. Na janela do espaço de trabalho do Log Analytics, selecione Logs

  4. No editor de consultas, cole a seguinte consulta Kusto Query Language . Esta consulta mostra o uso da política por operação nos últimos x dias. A duração padrão é definida como 90 dias (90d). Observe que a consulta é focada apenas na operação em que um token/código é emitido pela política.

    AuditLogs
    | where TimeGenerated  > ago(90d)
    | where OperationName contains "issue"
    | extend  UserId=extractjson("$.[0].id",tostring(TargetResources))
    | extend Policy=extractjson("$.[1].value",tostring(AdditionalDetails))
    | summarize SignInCount = count() by Policy, OperationName
    | order by SignInCount desc  nulls last
    
  5. Selecione Executar. Os resultados da consulta são exibidos na parte inferior da tela.

  6. Para guardar a consulta para utilização posterior, selecione Guardar.

    Log Analytics log editor

  7. Preencha os seguintes dados:

    • Nome - Introduza o nome da sua consulta.
    • Salvar como - Selecione query.
    • Categoria - Selecione Log.
  8. Selecione Guardar.

Você também pode alterar sua consulta para visualizar os dados usando o operador de renderização .

AuditLogs
| where TimeGenerated  > ago(90d)
| where OperationName contains "issue"
| extend  UserId=extractjson("$.[0].id",tostring(TargetResources))
| extend Policy=extractjson("$.[1].value",tostring(AdditionalDetails))
| summarize SignInCount = count() by Policy
| order by SignInCount desc  nulls last
| render  piechart

Log Analytics log editor pie

Para obter mais exemplos, consulte o repositório GitHub do Azure AD B2C SIEM.

6.2 Criar uma pasta de trabalho

Os livros fornecem uma tela flexível para a análise de dados e a criação de relatórios visuais avançados no portal do Azure. Eles permitem que você aproveite várias fontes de dados do Azure e combine-as em experiências interativas unificadas. Para obter mais informações, consulte Pastas de trabalho do Azure Monitor.

Siga as instruções abaixo para criar uma nova pasta de trabalho usando um Modelo de Galeria JSON. Esta pasta de trabalho fornece um painel de Autenticação e Informações do Usuário para o locatário do Azure AD B2C.

  1. Inicie sessão no portal do Azure.

  2. Se você tiver acesso a vários locatários, selecione o ícone Configurações no menu superior para alternar para seu locatário do Microsoft Entra ID no menu Diretórios + assinaturas .

  3. Na janela do espaço de trabalho do Log Analytics, selecione Pastas de trabalho.

  4. Na barra de ferramentas, selecione + Nova opção para criar uma nova pasta de trabalho.

  5. Na página Nova pasta de trabalho, selecione o Editor Avançado usando a <opção /> na barra de ferramentas.

    Gallery Template

  6. Selecione Modelo de galeria.

  7. Substitua o JSON no Modelo de Galeria pelo conteúdo da pasta de trabalho básica do Azure AD B2C:

  8. Aplique o modelo usando o botão Aplicar .

  9. Selecione o botão Edição concluída na barra de ferramentas para concluir a edição da pasta de trabalho.

  10. Por fim, salve a pasta de trabalho usando o botão Salvar da barra de ferramentas.

  11. Forneça um Título, como o Painel B2C do Azure AD.

  12. Selecione Guardar.

    Save the workbook

A pasta de trabalho exibirá relatórios na forma de um painel.

Workbook first dashboard

Workbook second dashboard

Workbook third dashboard

Criar alertas

Os alertas são criados por regras de alerta no Azure Monitor e podem executar automaticamente consultas guardadas ou pesquisa de registos personalizadas em intervalos regulares. Você pode criar alertas com base em métricas de desempenho específicas ou quando determinados eventos ocorrem. Você também pode criar alertas sobre a ausência de um evento ou quando vários eventos ocorrem dentro de uma janela de tempo específica. Por exemplo, os alertas podem ser usados para notificá-lo quando o número médio de entradas exceder um determinado limite. Para obter mais informações, veja Criar alertas.

Use as instruções a seguir para criar um novo Alerta do Azure, que enviará uma notificação por email sempre que houver uma queda de 25% no Total de Solicitações em comparação com o período anterior. O alerta será executado a cada 5 minutos e procurará a queda na última hora em comparação com a hora anterior. Os alertas são criados usando a linguagem de consulta Kusto.

  1. Inicie sessão no portal do Azure.

  2. Se você tiver acesso a vários locatários, selecione o ícone Configurações no menu superior para alternar para seu locatário do Microsoft Entra ID no menu Diretórios + assinaturas .

  3. No espaço de trabalho do Log Analytics, selecione Logs.

  4. Crie uma nova consulta Kusto usando esta consulta .

    let start = ago(2h);
    let end = now();
    let threshold = -25; //25% decrease in total requests.
    AuditLogs
    | serialize TimeGenerated, CorrelationId, Result
    | make-series TotalRequests=dcount(CorrelationId) on TimeGenerated from start to end step 1h
    | mvexpand TimeGenerated, TotalRequests
    | serialize TotalRequests, TimeGenerated, TimeGeneratedFormatted=format_datetime(todatetime(TimeGenerated), 'yyyy-MM-dd [HH:mm:ss]')
    | project   TimeGeneratedFormatted, TotalRequests, PercentageChange= ((toreal(TotalRequests) - toreal(prev(TotalRequests,1)))/toreal(prev(TotalRequests,1)))*100
    | order by TimeGeneratedFormatted desc
    | where PercentageChange <= threshold   //Trigger's alert rule if matched.
    
  5. Selecione Executar para testar a consulta. Você verá os resultados se houver uma queda de 25% ou mais no total de solicitações na última hora.

  6. Para criar uma regra de alerta com base nessa consulta, use a opção + Nova regra de alerta disponível na barra de ferramentas.

  7. Na página Criar uma regra de alerta, selecione Nome da condição

  8. Na página Configurar lógica de sinal, defina os seguintes valores e use o botão Concluído para salvar as alterações.

    • Lógica de alerta: defina Número de resultadosmaior que0.
    • Avaliação baseada em: Selecione 120 para Período (em minutos) e 5 para Frequência (em minutos)

    Create a alert rule condition

Depois que o alerta for criado, vá para o espaço de trabalho do Log Analytics e selecione Alertas. Esta página exibe todos os alertas que foram acionados na duração definida pela opção Intervalo de tempo .

Configurar grupos de ação

Os alertas do Azure Monitor e do Service Health usam grupos de ação para notificar os usuários de que um alerta foi disparado. Você pode incluir o envio de uma chamada de voz, SMS, e-mail; ou acionar vários tipos de ações automatizadas. Siga as orientações Criar e gerenciar grupos de ação no portal do Azure

Aqui está um exemplo de um e-mail de notificação de alerta.

Email notification

Vários inquilinos

Para integrar vários logs de locatário do Azure AD B2C ao mesmo Espaço de Trabalho do Log Analytics (ou conta de armazenamento do Azure ou hub de eventos), você precisará de implantações separadas com valores diferentes de Nome de Oferta Msp. Verifique se o espaço de trabalho do Log Analytics está no mesmo grupo de recursos que você configurou em Criar ou escolher grupo de recursos.

Ao trabalhar com vários espaços de trabalho do Log Analytics, use a Consulta entre espaços de trabalho para criar consultas que funcionem em vários espaços de trabalho. Por exemplo, a consulta a seguir executa uma junção de dois logs de auditoria de locatários diferentes com base na mesma categoria (por exemplo, autenticação):

workspace("AD-B2C-TENANT1").AuditLogs
| join  workspace("AD-B2C-TENANT2").AuditLogs
  on $left.Category== $right.Category

Change the data retention period (Alterar o período de retenção de dados)

Os Logs do Azure Monitor são projetados para dimensionar e dar suporte à coleta, indexação e armazenamento de grandes quantidades de dados por dia de qualquer fonte em sua empresa ou implantados no Azure. Por padrão, os logs são retidos por 30 dias, mas a duração da retenção pode ser aumentada para até dois anos. Saiba como gerenciar o uso e os custos com os Logs do Azure Monitor. Depois de selecionar o nível de preço, você pode alterar o período de retenção de dados.

Desativar a coleta de dados de monitoramento

Para parar de coletar logs no espaço de trabalho do Log Analytics, exclua as configurações de diagnóstico criadas. Continuará a incorrer em encargos pela retenção dos dados de registo que já recolheu na sua área de trabalho. Se já não precisar dos dados de monitorização que recolheu, pode eliminar a sua área de trabalho do Log Analytics e o grupo de recursos que criou para o Azure Monitor. A exclusão do espaço de trabalho do Log Analytics exclui todos os dados no espaço de trabalho e impede que você incorra em encargos adicionais de retenção de dados.

Excluir espaço de trabalho e grupo de recursos do Log Analytics

  1. Inicie sessão no portal do Azure.
  2. Se você tiver acesso a vários locatários, selecione o ícone Configurações no menu superior para alternar para seu locatário do Microsoft Entra ID no menu Diretórios + assinaturas .
  3. Escolha o grupo de recursos que contém o espaço de trabalho do Log Analytics. Este exemplo usa um grupo de recursos chamado azure-ad-b2c-monitor e um espaço de trabalho do Log Analytics chamado .AzureAdB2C
  4. Exclua o espaço de trabalho do Logs Analytics.
  5. Selecione o botão Excluir para excluir o grupo de recursos.

Próximos passos