Skip to content

Logging Architecture

Purpose

This document describes the logging and audit trail architecture across Azure and AWS environments. The architecture is designed to meet HIPAA's 6-year log retention requirement (§164.316(b)(2)(i)) and SOC2 audit control requirements (CC7.2) while maintaining operational access to recent logs for troubleshooting and security monitoring.

1. Architecture Overview — Dual Logging System

The logging architecture implements three parallel paths to balance operational needs, active security monitoring, and long-term compliance retention:

┌─────────────────────────────────────────────────────────────────────┐
│                         LOG SOURCES                                  │
│  Entra ID │ Activity Log │ VMs │ NSGs │ CloudTrail │ VPC Flow Logs  │
│  Palo Alto Firewalls │ Intune │ GitHub                              │
└─────────────────────────────────────────────────────────────────────┘

                ┌─────────────────┼─────────────────┐
                │                 │                 │
                ▼                 ▼                 ▼
         ┌─────────────┐   ┌─────────────┐  ┌──────────────┐
         │  HOT PATH   │   │  SIEM PATH  │  │ ARCHIVE PATH │
         │  (30 days)  │   │  (~1 year)  │  │  (6 years)   │
         └─────────────┘   └─────────────┘  └──────────────┘
                │                 │                 │
                ▼                 ▼                 ▼
         Log Analytics     Arctic Wolf      Azure Storage
           Workspace         SIEM            + AWS S3
          (per-env)                         (WORM/Object Lock)
                │                 │                 │
                ▼                 ▼                 ▼
         Operational       Active Security     Compliance
          Querying          Investigation       Audit Trail
         (KQL queries)     (Alerts, SOC)       (Immutable)

Path Purposes

PathRetentionPurposeStatus
Hot30 daysOperational troubleshooting, performance analysis, recent log queries via KQL✅ Operational
SIEM~1 yearActive security monitoring, threat detection, incident investigation✅ Operational (Arctic Wolf)
Archive6 yearsHIPAA compliance, audit trail, long-term forensics, immutable evidence✅ Operational

The archive path is independent of the SIEM — even if Arctic Wolf retention changes or the SIEM provider changes, the 6-year compliance archive remains intact and under direct organizational control.

2. Azure Logging (azure-infra and azure-dde-infra)

Entra ID Diagnostic Settings

Entra ID logs are sent to both hot (LAW) and archive (Storage Account) destinations:

Log CategoryEnabledDestination
AuditLogsLAW + Archive Storage
SignInLogsLAW + Archive Storage
NonInteractiveUserSignInLogsLAW + Archive Storage
ServicePrincipalSignInLogsLAW + Archive Storage
ManagedIdentitySignInLogsLAW + Archive Storage
ProvisioningLogsLAW + Archive Storage
ADFSSignInLogsLAW + Archive Storage
RiskyUsersLAW + Archive Storage
UserRiskEventsLAW + Archive Storage

Activity Log Diagnostic Settings

Azure Activity Log (subscription-level control plane operations) sent to LAW and archive:

Log CategoryEnabledDestination
AdministrativeLAW + Archive Storage
SecurityLAW + Archive Storage
AlertLAW + Archive Storage
PolicyLAW + Archive Storage

Per-Environment Data Collection Rules (DCRs)

DCRs are configured with dual-destination routing — all resource logs go to both the local LAW (hot path) and archive storage (6-year path):

EnvironmentLAW NameHot RetentionArchive Destination
Productionlaw-prod30 days✅ Archive storage wired
Dashboardlaw-dashboard30 days✅ Archive storage wired
DDElaw-dde30 days✅ Archive storage wired

NSG / VPC Flow Logs

NSG and VPC flow logs are redirected to archive storage with lifecycle policies and WORM immutability:

Flow Log TargetDestinationLifecycleImmutable
Azure NSGs (all environments)Archive storage accountHot → Cool 90d → Archive 365d✅ WORM
AWS VPCs (all 7 accounts)cirius-archive-logs-prodStandard → Glacier 90d → Deep Archive 365d✅ Object Lock GOVERNANCE

Event Hub → Arctic Wolf SIEM

Azure diagnostic settings stream logs to Event Hub, which forwards to Arctic Wolf SIEM for active monitoring:

SourceEvent HubSIEM Retention
Entra ID logs✅ Configured~1 year (Arctic Wolf controlled)
Activity Log✅ Configured~1 year
Resource logs✅ Configured~1 year

Palo Alto Firewall Logs (Azure)

All three Azure/DDE firewalls forward logs through dedicated syslog VMs to Arctic Wolf and archive storage:

FirewallSyslog VMArctic Wolf (VLC)Archive
Azure productionsyslogazp (firewall subnet)✅ Active✅ Via syslog VM
Azure dashboardsyslogazp (shared)✅ Active✅ Via syslog VM
DDE customer-facingsyslogdde (private subnet)✅ Active✅ Via syslog VM

See Palo Alto Firewall Overview for syslog VM configuration details.

Azure Archive Storage

Archive storage deployed across all three environments (azure-infra and azure-dde-infra):

ConfigurationValue
Lifecycle policyHot → Cool at 90 days → Archive tier at 365 days
ImmutabilityWORM (time-based retention)
ScopePer-environment storage accounts

3. AWS Logging (aws-infra)

CloudTrail Organization Trail

ConfigurationValue
Trail Namecirius-org-trail
ScopeOrganization-wide (all 7 accounts)
S3 Bucketcirius-cloudtrail-logs (Logging account)
EncryptionAWS KMS (customer-managed key)
Log File Validation✅ Enabled (SHA-256 digest)
Management Events✅ All accounts
LifecycleStandard → Glacier 90d → Deep Archive 365d

VPC Flow Logs

VPCDestinationObject LockRetention
All VPCs (7 accounts)cirius-archive-logs-prod✅ GOVERNANCE mode2190 days (6 years)

AWS Palo Alto Firewall Logs

ComponentStatus
Syslog VMsyslogawp — Ubuntu 22.04 LTS, t3.small, syslog-ng, IMDSv2 enforced, termination protection enabled
Arctic Wolf VLC✅ Active ingestion confirmed
S3 archive shipping✅ Operational — ships to cirius-archive-logs-prod
Log typesTraffic, threat, auth, system, config, HIP match

HIPAA Archive Bucket

ConfigurationValue
Bucket Namecirius-archive-logs-prod
Object LockGOVERNANCE mode (2190-day retention)
Lifecycle PolicyStandard → Glacier (90 days) → Deep Archive (365 days)
Versioning✅ Enabled
EncryptionAES-256 (SSE-S3)
Public Access❌ Blocked (all 4 settings)

AWS Security Services

ServicePurposeStatus
Security HubCompliance findings (NIST 800-53 Rev 5)✅ Org-wide
GuardDutyThreat detection✅ All 7 accounts
ConfigResource configuration tracking✅ All accounts
Audit ManagerContinuous HIPAA assessment✅ Org-wide

4. Known Gaps and Remediation

GapImpactStatus
Azure WORM locked prematurelySome archive containers deployed with locked=true before all log flows were validated. Empty containers cannot be deleted until retention expires (~2032). Containers receiving active data are correctly protected.Accepted risk — no corrective action possible
GitHub and Intune audit logs not archivedNo long-term retention beyond default platform retentionPlanned Q2-Q3 2026
Historical log data lost during SIEM transitionsNo audit trail prior to current Arctic Wolf deploymentAccepted — cannot recover

All previously listed DCR, NSG flow log, and AWS firewall gaps are resolved as of March 2026.

5. Log Source Inventory

SourcePlatformHotSIEMArchiveArchive Immutable
Entra ID audit/sign-in logsAzure✅ 30d LAW✅ Arctic Wolf✅ WORM storage
Azure Activity LogAzure✅ 30d LAW✅ Arctic Wolf✅ WORM storage
VM diagnostic logsAzure✅ 30d LAW✅ Arctic Wolf✅ Archive wired via DCR
NSG flow logsAzure✅ Archive with lifecycle
Palo Alto firewall (Azure prod)Azure✅ Arctic Wolf VLC✅ Via syslog VM
Palo Alto firewall (Azure dashboard)Azure✅ Arctic Wolf VLC✅ Via syslog VM
Palo Alto firewall (DDE)Azure✅ Arctic Wolf VLC✅ Via syslog VM
Palo Alto firewall (AWS DR)AWS✅ Arctic Wolf VLC✅ Via syslog VM → S3
AWS CloudTrail (org trail)AWS✅ KMS-encrypted S3
VPC flow logsAWS✅ Object Lock GOVERNANCE
Security Hub findingsAWS✅ 90d console
GuardDuty findingsAWS✅ Console
GitHub audit logsGitHub✅ Default❌ Not archived
Intune audit logsAzure✅ Default❌ Not archived

6. Compliance Mapping

RequirementControlHow Logging Addresses It
HIPAA §164.312(b) — Audit controlsActivity logging on all systemsAzure Monitor, CloudTrail, NSG/VPC flow logs, firewall syslog
HIPAA §164.316(b)(2)(i) — 6-year retentionLogs retained for minimum required periodArchive storage with WORM/Object Lock deployed across all environments
SOC2 CC7.2 — MonitoringSystem monitoring activitiesArctic Wolf SIEM with VLC active across all four firewalls
SOC2 CC7.3 — Evaluate and respondLog review and responseSIEM alerting and Security Hub findings enable response
HITRUST 09.aa — Event loggingComprehensive event loggingEntra ID, Activity Log, CloudTrail, firewall syslog

Document History

DateChangeAuthor
April 2026Added explicit syslog VM hostnames (syslogazp, syslogdde, syslogawp) to Azure and AWS Palo Alto sections; added link to Palo Alto Firewall Overview for VM config detailsKobe
March 2026Updated to reflect completed remediation: DCR dual-destination wired in all environments; NSG/VPC flow logs redirected to archive with WORM/Object Lock; AWS firewall syslog operational via syslog VM with Arctic Wolf VLC active; archive status updated to Operational; removed resolved gaps from Known Gaps tableRory
March 2, 2026Fixed factual errors: CloudTrail/VPC flow log destinations corrected, Log Source Inventory statuses updated, Known Gaps correctedRory
March 2026Initial draft documenting dual logging architectureRory

Internal use only — Cirius Group