Compartilhar via


Controlar alterações no conjunto de regras do Firewall do Azure

Este artigo mostra como monitorar e acompanhar alterações em grupos de coleção de regras do Firewall do Azure usando o Azure Resource Graph. O controle de alterações ajuda você a manter a conformidade de segurança, auditar modificações de configuração e solucionar problemas fornecendo um histórico detalhado de modificações do conjunto de regras.

O Azure Resource Graph fornece dados de análise de alterações que ajudam você a acompanhar quando as alterações foram detectadas em grupos de coleta de regras do Firewall do Azure. Você pode ver os detalhes da alteração de propriedade e das alterações de consulta em escala na assinatura, no grupo de gerenciamento ou no locatário.

O controle de alterações para grupos de coleção de regras do Firewall do Azure permite que você:

  • Monitorar alterações de configuração: acompanhar todas as modificações em regras e políticas de firewall
  • Manter a conformidade: gerar trilhas de auditoria para requisitos de segurança e conformidade
  • Solucionar problemas: identificar quando foram feitas alterações que podem afetar a conectividade
  • Analisar tendências: entender padrões em modificações de regra ao longo do tempo

Pré-requisitos

Antes de controlar as alterações do conjunto de regras, verifique se você atende aos seguintes requisitos:

  • Você tem um Firewall do Azure com grupos de coleção de regras configurados
  • Você tem permissões apropriadas para acessar o Azure Resource Graph
  • O Firewall do Azure está usando a Política de Firewall do Azure (não regras clássicas)

Acessar o Gerenciador do Azure Resource Graph

Para executar consultas de controle de alterações, você precisa acessar o Azure Resource Graph Explorer:

  1. Entre no Portal do Azure
  2. Pesquisar e selecionar Explorador de Resource Graph
  3. Na janela de consulta, você pode executar as consultas de controle de alterações descritas nas seções a seguir

Consulta básica de controle de alterações

Use esta consulta para obter uma exibição abrangente de todas as alterações nos grupos de coleta de regras do Firewall do Azure:

networkresourcechanges
| where properties contains "microsoft.network/firewallpolicies/rulecollectiongroups"
| extend parsedProperties = parse_json(properties)
| extend TargetResource = tostring(parsedProperties.targetResourceId),
         Timestamp = todatetime(parsedProperties.changeAttributes.timestamp),
         Changes = todynamic(parsedProperties.changes),
         ChangeType = tostring(parsedProperties.changeType),
         PreviousSnapshotId = tostring(parsedProperties.changeAttributes.previousResourceSnapshotId),
         NewSnapshotId = tostring(parsedProperties.changeAttributes.newResourceSnapshotId),
         CorrelationId = tostring(parsedProperties.changeAttributes.correlationId),
         ChangesCount = toint(parsedProperties.changeAttributes.changesCount),
         TenantId = tostring(tenantId),
         Location = tostring(location),
         SubscriptionId = tostring(subscriptionId),
         ResourceGroup = tostring(resourceGroup),
         FirewallPolicyName = extract('/firewallPolicies/([^/]+)/', 1, tostring(id))
| mv-expand ChangeKey = bag_keys(Changes)
| extend ChangeDetails = todynamic(Changes[tostring(ChangeKey)])
| extend RuleCollectionName = extract('properties\\.ruleCollections\\["([^"]+)"\\]', 1, tostring(ChangeKey))
| where isnotempty(RuleCollectionName)
| summarize Changes = make_list(pack("ChangeKey", ChangeKey, "PreviousValue", tostring(ChangeDetails.previousValue), "NewValue", tostring(ChangeDetails.newValue)))
    by Timestamp = format_datetime(Timestamp, 'yyyy-MM-dd HH:mm:ss'),
       TenantId,
       SubscriptionId,
       ResourceGroup,
       Location,
       TargetResource,
       FirewallPolicyName,
       RuleCollectionName,
       ChangeType,
       PreviousSnapshotId,
       NewSnapshotId,
       CorrelationId,
       ChangesCount
| project Timestamp,
          TenantId,
          SubscriptionId,
          ResourceGroup,
          Location,
          TargetResource,
          FirewallPolicyName,
          RuleCollectionName,
          ChangeType,
          PreviousSnapshotId,
          NewSnapshotId,
          CorrelationId,
          ChangesCount,
          Changes
| order by Timestamp desc

Noções básicas sobre os resultados da consulta

A consulta de controle de alterações retorna as seguintes informações para cada alteração detectada:

Campo Description
Timestamp Quando a alteração ocorreu
SubscriptionId Assinatura do Azure que contém o firewall
ResourceGroup Grupo de recursos que contém a política de firewall
FirewallPolicyName Nome da política de firewall afetada
RuleCollectionName Nome da coleção de regras afetada
Tipo de Alteração Tipo de alteração (Criar, Atualizar, Excluir)
ContagemDeAlterações Número de propriedades alteradas
Alterações Lista detalhada do que foi alterado, incluindo valores anteriores e novos
CorrelationId Identificador exclusivo vinculando alterações relacionadas

Filtrar alterações por período de tempo

Para se concentrar em alterações recentes, você pode adicionar um filtro de tempo à consulta:

networkresourcechanges
| where properties contains "microsoft.network/firewallpolicies/rulecollectiongroups"
| where todatetime(properties.changeAttributes.timestamp) >= ago(7d)  // Last 7 days
// ... rest of query

Filtrar por política de firewall específica

Para controlar as alterações de uma política de firewall específica:

networkresourcechanges
| where properties contains "microsoft.network/firewallpolicies/rulecollectiongroups"
| where id contains "/firewallPolicies/your-policy-name"
// ... rest of query

Configurar o monitoramento automatizado

Para monitoramento contínuo, considere a configuração:

  • Consultas agendadas: usar os Aplicativos Lógicos do Azure ou a Automação do Azure para executar consultas em um agendamento
  • Alertas: criar alertas do Azure Monitor com base em padrões de alteração
  • Relatórios: Exportar resultados para ferramentas de armazenamento ou visualização para relatórios

Práticas recomendadas

Ao implementar o controle de alterações do conjunto de regras:

  • Monitoramento regular: configurar a execução de consulta regular para capturar alterações prontamente
  • Políticas de retenção: Planejar o armazenamento de longo prazo de dados de alteração para conformidade
  • Controle de acesso: limitar o acesso a dados de controle de alterações com base nos requisitos de segurança
  • Integração: considere a integração com as ferramentas de monitoramento ou SIEM existentes

Resolução de problemas

Se você não vir as alterações esperadas nos resultados:

  • Verifique se você está usando a Política de Firewall do Azure (não regras clássicas)
  • Verifique se o período de tempo em sua consulta abrange quando ocorreram alterações
  • Verifique se você tem as permissões necessárias para acessar o Azure Resource Graph
  • Confirme se os nomes de recursos em seus filtros estão corretos