Partilhar via


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

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

O Azure Resource Graph fornece dados de análise de alterações que ajudam a controlar quando as alterações foram detetadas nos grupos de coleta de regras do Firewall do Azure. Você pode ver detalhes sobre alterações de propriedades e consultar alterações a uma escala ampla na sua subscrição, grupo de gestão ou inquilino.

O controlo de alterações para grupos de recolha de regras da Firewall do Azure permite-lhe:

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

Pré-requisitos

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

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

Aceder ao Azure Resource Graph Explorer

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

  1. Inicie sessão no portal do Azure
  2. Procurar e selecionar Resource Graph Explorer
  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 controlo 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

Compreender os resultados da consulta

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

Campo Description
Marca temporal Quando ocorreu a alteração
SubscriptionId Subscrição do Azure que contém a firewall
Grupo de Recursos 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 afetadas
TipoDeAlteração Tipo de alteração (Criar, Atualizar, Excluir)
ContagemDeAlterações Número de propriedades alteradas
Alterações Lista detalhada do que mudou, incluindo valores anteriores e novos
CorrelationId Identificador exclusivo que vincula alterações relacionadas

Filtrar alterações por período de tempo

Para se concentrar nas alterações recentes, pode adicionar um filtro de tempo à sua 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: use os Aplicativos Lógicos do Azure ou a Automação do Azure para executar consultas em uma agenda
  • Alertas: Criar alertas do Azure Monitor com base em padrões de alteração
  • Relatórios: exporte resultados para ferramentas de armazenamento ou visualização para geração de relatórios

Melhores práticas

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

  • Monitoramento regular: configure a execução regular de consultas para detetar alterações prontamente
  • Políticas de retenção: planeje o armazenamento de longo prazo de dados de alteração para fins de conformidade
  • Controle de acesso: limite o acesso a dados de rastreamento de alterações com base nos requisitos de segurança
  • Integração: considere a integração com seu SIEM existente ou ferramentas de monitoramento

Solução de problemas

Caso não veja as alterações esperadas nos seus 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 na 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 dos recursos nos filtros estão corretos