Skip to content
hannctl.
PDF ↓
← All work
08 / Woori FIS · AWS · Security Cloud security · IaC automation

Woori Financial Group AWS security architecture.

Moved network separation requirements across multiple AWS accounts into subnet and firewall structure, and standardized security settings as one set of Terraform code.

PERIOD
Feb 2026 – Oct 2026
MY ROLE
Cloud Security Engineer · Information Security Department
TOOLS & CONTEXT
Terraform · AWS Network Firewall · AWS WAF · AWS Shield Standard · GuardDuty · Security Hub · Splunk · Python — Multiple AWS accounts
DMZPrivateInternetShieldStandardCloudFront /WAFFilters webattacksALBDMZ subnetNetworkFirewallFirewall on theVPC pathVPC workloadsNo public IPOutbound: allowed targets onlyOne set of Terraform codeApplied the same way across multiple AWS accounts
One set of Terraform code applies this design the same way across multiple AWS accounts.
01 / CONTEXT

Problem

Group companies were adopting public cloud for the first time, with no Terraform in place, and security settings varied by account and by person. Network separation rules were hard to hold in documents alone.

02 / DECISIONS

Approach

Network separation (a Korean financial regulation) became three design principles: separate DMZ and Private subnets, no public IP on backends, and outbound only to allowed destinations. WAF, Network Firewall, and Shield Standard are defined in Terraform and applied through the same code to every account, with GuardDuty and Security Hub connected to Splunk SIEM/SOAR.

03 / ENGINEERING

Implementation

  • Terraform
  • AWS Network Firewall
  • AWS WAF
  • AWS Shield Standard
  • GuardDuty
  • Security Hub
  • Splunk
  • Python

Scale · Multiple AWS accounts

FLOW / 07
Internet

The path of incoming traffic is split into layers.

01 / 07
Read every step
  1. The path of incoming traffic is split into layers.
  2. AWS Shield Standard provides baseline DDoS protection.
  3. CloudFront and WAF filter web attacks.
  4. The internet-facing ALB sits in a DMZ subnet.
  5. AWS Network Firewall inspects traffic on the VPC path.
  6. Backends sit in Private subnets with no public IP, and outbound goes only to allowed destinations.
  7. One set of Terraform code applies this design the same way across multiple AWS accounts.
GuardDutySecurity HubWAFNetwork FirewallShieldSplunk SIEMOne place to analyze logsSOAR responseResponse by runbook
Splunk-based SOAR connects detection to the response process.
04 / VERIFICATION

Result

The same security standard repeats through code as accounts grow, and per-person differences are gone. A Python pipeline now collects and analyzes network configuration across multiple AWS accounts, so review is repeatable. IAM permissions are defined in Terraform as well, which structurally blocks excessive grants.

5
Security services connected to Splunk SIEM/SOAR
3
Design principles from network separation
1
Set of Terraform code across multiple AWS accounts
05 / REFLECTION

What I learned

The biggest lesson was that once security settings become code, differences between accounts show up as differences in code. When each person configured accounts in the console, finding which account differed meant comparing settings one by one; applying the same Terraform code to every account made any difference visible right in the code. Rules that existed only on paper, such as network separation, could be enforced by structure only after they were turned into three principles: separate subnets, no public IPs on the backend, and outbound only to allowed destinations. I also learned that a standard defined in code is complete only when it is confirmed to hold in each account, and the pipeline that collects and analyzes network configuration was built to make that confirmation a repeatable check rather than something people remember.

OUTCOME

IaC 0 → Terraform — Network Firewall and WAF standardized in code

Related field notes

NEXT / Com2us Platform · Migration Zero-downtime migration from GCP to Tencent Cloud

Search the site

Quick links ↑ ↓ move · Enter open · Esc close

Choose a theme

Click a badge to switch to that theme on the same content. Dragging only swings it.

Back to the front page →