# CF: Distribuições do CloudFront com o registro de logs desativado

> Esta regra identifica distribuições **Amazon CloudFront** que:
>
> * Estão **habilitadas (Enabled = True)**
> * Não possuem **Standard Logging ativado**
> * Atendem aos filtros de tag definidos
>
> O objetivo é identificar distribuições ativas que não possuem geração de logs para auditoria e rastreabilidade.

***

**Contexto da regra e impacto no negócio**

CloudFront é frequentemente utilizado para:

* Distribuição de conteúdo público
* APIs expostas
* Aplicações web críticas
* Integrações com múltiplas origens

Quando o logging não está habilitado:

* Não há trilha de auditoria de acessos
* Não é possível analisar padrões de tráfego
* Fica mais difícil investigar incidentes
* Compromete requisitos de compliance

Impacto:

* Risco de segurança
* Dificuldade de resposta a incidentes
* Perda de visibilidade operacional
* Não conformidade regulatória

Classificação: **SEGURANÇA + GOVERNANÇA**

***

**Detalhamento técnico da regra**

A regra avalia distribuições CloudFront em escopo global.

CloudFront é um serviço global e não regional.

***

**Como a regra é executada**

**1. Listagem de Distribuições**

API:

```
cloudfront:ListDistributions
```

Utiliza paginação para recuperar todas as distribuições da conta.

***

**2. Obtenção de Tags**

Para cada distribuição:

```
cloudfront:ListTagsForResource
```

Os filtros de tag são aplicados antes da avaliação final.

***

**3. Verificação de Status**

A distribuição só é analisada se:

```
Enabled = True
```

Distribuições desabilitadas são ignoradas.

***

**4. Verificação de Logging**

Campo analisado no objeto da distribuição:

```
Logging.Enabled
```

A distribuição é sinalizada quando:

```
Enabled = True
AND
Logging.Enabled = False
```

***

**Lógica aplicada**

Uma distribuição será sinalizada quando:

```
Enabled = True
AND
Logging.Enabled = False
AND
Atender aos filtros de tag (se configurados)
```

***

**Campos analisados**

Distribuição CloudFront:

* `Id`
* `ARN`
* `DomainName`
* `Status`
* `Enabled`
* `Logging.Enabled`
* `Tags`

***

**Parâmetros considerados na busca**

APIs utilizadas:

* `cloudfront:ListDistributions`
* `cloudfront:ListTagsForResource`

Parâmetros configuráveis:

* Filtros de tag (inclusão/exclusão)

Não há filtro temporal.

***

**Período Avaliado (Filtro Temporal)**

Período Avaliado: Não aplicado

A regra avalia o estado atual da configuração da distribuição.

***

**Intervalo de Análise**

Execução padrão: a cada 8 horas.

***

**Impacto Financeiro**

Esta regra não possui savings direto.

O objetivo é:

* Garantir visibilidade de acessos
* Melhorar capacidade de investigação
* Atender requisitos de auditoria
* Fortalecer postura de segurança

O impacto financeiro é indireto, podendo ser significativo em caso de incidente ou investigação forense sem logs disponíveis.

***

**Exemplo de Impacto**

Cenário:

Distribuição:

```
Enabled = True
Logging.Enabled = False
```

Resultado:

Distribuição sinalizada como ativa sem logging habilitado.

***

**Dicas de uso e boas práticas para o usuário**

Recomendações:

* Habilitar Standard Logging para todas as distribuições de produção.
* Direcionar logs para bucket S3 dedicado.
* Implementar retenção e lifecycle no bucket de logs.

Boas práticas:

* Separar bucket de logs por ambiente.
* Ativar compressão de logs.
* Integrar logs com SIEM.
* Monitorar acessos anômalos.

Exceções possíveis:

* Ambientes temporários de teste.
* Distribuições internas sem exposição pública.
* Cenários onde logging é substituído por outra solução centralizada.

***
