BLOGS

24 April, 2021

Why native Terraform vs. AWS Control Tower

By Bsinitel


We determined that a custom-built landing zone would be more suitable for our needs than utilizing AWS Control Tower. The primary reasons for this decision are as follows:

1. The AWS Control Tower baseline provides a foundational layer with services like IAM Identity Center, CloudTrail, Config, and basic security controls. However, to establish a robust landing zone, we require a more extensive solution that encompasses a wider range of services and configurations.

2. The deployment of services such as GuardDuty or Security Hub, which are not currently part of the Control Tower baseline, could potentially impede future upgrades to the platform. Should these services become part of the baseline in subsequent versions, updating Control Tower may be hindered by conflicts with existing resources that were deployed independently.

3. AWS Control Tower provides account customization capabilities through AFC and AFT. Nevertheless, the platform's complex architecture and inherent limitations, such as the inability to leverage GitLab as a code repository for Terraform templates and Python scripts, can constrain its overall utility.

Finally, given the need to establish a standardized process for deploying services, both those supported by Control Tower and those that are not, across various accounts and regions, we've opted to utilize a single, consistent approach for all deployments.