Virtual Event
Join us for the next HashiConf Digital October 12-15, 2020 Register for Free

Prepare for Certification

Exam Review - Terraform Associate Certification

The Terraform Associate certification is for Cloud Engineers specializing in operations, IT, or development who know the basic concepts and skills associated with open source HashiCorp Terraform. Candidates will be best prepared for this exam if they have professional experience using Terraform in production, but performing the exam objectives in a personal demo environment may also be sufficient. This person understands which enterprise features exist and what can and cannot be done using the open source offering.

This guide lists the specific exam objectives and resources you can study to demonstrate those objectives. For a start-to-finish list of resources you can study to prepare for the whole exam from scratch, take a look at our study guide.


  • Basic terminal skills
  • Basic understanding of on-premises and cloud architecture

To learn more about the exam, visit the HashiCorp Product Certifications page.

»Review Guide

Here is a direct mapping of each HashiCorp Certified: Terraform Associate exam objective to where it is covered in HashiCorp's documentation and training. This provides experienced exam candidates a place to review just the objectives they need extra help with before taking the exam.

1Understand Infrastructure as Code (IaC) conceptsDocumentationGuide
1aExplain what IaC isInfrastructure as Code

Infrastructure as Code in a Private or Public Cloud
Introduction to Infrastructure as Code with Terraform
1bDescribe advantages of IaC patternsInfrastructure as code video

Infrastructure as Code in a Private or Public Cloud
Introduction to Infrastructure as Code with Terraform
2Understand Terraform's purpose (vs other IaC)DocumentationGuide
2aExplain multi-cloud and provider-agnostic benefitsMulti-Cloud Deployment
2bExplain the benefits of statePurpose of Terraform StateIntroduction to Infrastructure as Code with Terraform
3Understand Terraform basicsDocumentationGuide
3aHandle Terraform and provider installation and versioningProviders

Terraform Settings
Installing Terraform

Build Infrastructure– Providers
3bDescribe plug-in based architectureBuild Infrastructure– Initialization
3cDemonstrate using multiple providersBuild Infrastructure– Providers
3dDescribe how Terraform finds and fetches providersProvidersBuild Infrastructure– Providers
3eExplain when to use and not use provisioners and when to use local-exec or remote-execProvisioners are a Last ResortProvision
4Use the Terraform CLI (outside of core workflow)DocumentationGuide
4aGiven a scenario: choose when to use terraform fmt to format codeCommand: fmt
4bGiven a scenario: choose when to use terraform taint to taint Terraform resourcesCommand: taintFailed Provisioners
and Tainted Resources
4cGiven a scenario: choose when to use terraform import to import existing infrastructure into your Terraform stateCommand: import
4dGiven a scenario: choose when to use terraform workspace to create workspacesWorkspaces
4eGiven a scenario: choose when to use terraform state to view Terraform stateState Command
4fGiven a scenario: choose when to enable verbose logging and what the outcome/value isDebugging Terraform
5Interact with Terraform modulesDocumentationGuide
5aContrast module source optionsFinding and Using ModulesModules
5bInteract with module inputs and outputsModules
5cDescribe variable scope within modules/child modulesInput Variables

Calling a Child Module
5dDiscover modules from the public Terraform Module RegistryFinding and Using ModulesModules
5eDefining module versionModule Versions
6Navigate Terraform workflowDocumentationGuide
6aDescribe Terraform workflow ( Write -> Plan -> Create )The Core Terraform WorkflowBuild Infrastructure
6bInitialize a Terraform working directory (terraform init)Command: initBuild Infrastructure– Initialization
6cValidate a Terraform configuration (terraform validate)Command: validate
6dGenerate and review an execution plan for Terraform (terraform plan)Command: plan
6eExecute changes to infrastructure with Terraform (terraform apply)Command: applyBuild Infrastructure– Apply Changes
6fDestroy Terraform managed infrastructure (terraform destroy)Command: destroyDestroy Infrastructure
7Implement and maintain stateDocumentationGuide
7aDescribe default local backendBackends

7bOutline state lockingState Locking
7cHandle backend authentication methodsBackend Types
7dDescribe remote state storage mechanisms and supported standard backendsBackend TypesRemote State Storage
7eDescribe effect of Terraform refresh on stateCommand: refresh
7fDescribe backend block in configuration and best practices for partial configurationsBackend ConfigurationRemote State Storage
7gUnderstand secret management in state filesSensitive Data in State
8Read, generate, and modify configurationDocumentationGuide
8aDemonstrate use of variables and outputsInput Variables

Output Variables
8bDescribe secure secret injection best practiceVault Provider for Terraform
8cUnderstand the use of collection and structural typesComplex Types
8dCreate and differentiate resource and data configurationResources

Data Sources
8eUse resource addressing and resource parameters to connect resources togetherResource Addressing

References to Named Values
8fUse Terraform built-in functions to write configurationBuilt-in Functions
8gConfigure resource using a dynamic blockDynamic Blocks
8hDescribe built-in dependency management (order of execution based)Resource Dependencies
9Understand Terraform Cloud and Enterprise capabilitiesDocumentationResource
9aDescribe the benefits of Sentinel, registry, and workspacesSentinel

Module Registry


Module Registry

9bDifferentiate OSS and Terraform Cloud workspacesCLI Workspaces

Enterprise/Cloud Workspaces
9cSummarize features of Terraform CloudTerraform CloudCompare Packages

»Next Steps

To study the exam content from start to finish, review the materials in our study guide. To find out what types of questions will be on the exam, review our sample questions.

If you're ready to register for the exam, we wish you the best of luck! Visit our exam partner to:

  1. create an account.
  2. purchase the exam.
  3. register for an exam appointment.
  4. take the exam.

Sign up for the exam here!