HashiCorp Terraform is used to simplify Azure deployment and the management process by defining the necessary components as code. The Microsoft Azure provider for Terraform was initially released five years ago and recently updated to version 2.0. In addition to Terraform infrastructure as code, Terraform also provides Sentinel policies as code to configure guardrails that are enforced within the provisioning workflow. Policy enforcement protects against infrastructure changes that don’t follow security, regulatory compliance, or internal business policies.
To aid in the creation of new policies, we recently released a preview of the Terraform Foundational Policies Library for HashiCorp Terraform Cloud and Enterprise. The initial set of 50 policies are based on controls, as defined by the Center for Internet Security Benchmarks, for some of the major cloud providers.
The following video walks through the configuration of two policies, which were defined by CIS Benchmarks, and made available as part of the Terraform Foundational Policies Library and how to apply them to an Azure configuration. The first policy being applied is to verify that all managed disks are encrypted. The second policy is to check the extensions being installed, ensuring only those of which were approved are allowed. These policies are combined with an already existing Sentinel rule and checked with every Terraform plan operation.
If you would like to know more about the Terraform Foundational Policies Library or how to get started with additional policies, please review the documentation. To learn more about using Terraform with Sentinel, visit the HashiCorp Learn Platform.
Learn how to use best practices-based modules to build production-grade Terraform deployments on AWS.
Learn a quick method for getting started with the Cloud Development Kit (CDK) for Terraform using TypeScript as infrastructure code and provisioning on Microsoft Azure.
The Terraform AWS Provider now offers users the ability to define default tags at the provider level, simplifying tag management.