# KodeKloud: Beta Courses HashiCorp Certified: Terraform Associate 004

## HashiCorp Certified: Terraform Associate 004

### Course Introduction

- [Course Introduction](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Course-Introduction/Course-Introduction/page.md): A hands-on course preparing learners for the HashiCorp Terraform Associate 004 exam by teaching core Terraform concepts, workflows, providers, modules, and practical labs.
- [About the Terraform Associate Exam](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Course-Introduction/About-the-Terraform-Associate-Exam/page.md): Overview of the HashiCorp Terraform Associate exam, covering purpose, target candidates, format, logistics, question types, preparation tips, and registration requirements
- [Exam Objectives what youre tested on](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Course-Introduction/Exam-Objectives-what-youre-tested-on/page.md): Concise overview and study guide of the HashiCorp Certified Terraform Associate exam objectives covering IaC, Terraform workflow, configuration, modules, state management, day two operations, and Terraform Cloud features
- [Whats New in the Terraform Associate 004 Exam](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Course-Introduction/Whats-New-in-the-Terraform-Associate-004-Exam/page.md): Overview of changes from Terraform Associate 003 to 004 exam, highlighting four new focus areas and study guidance

### Preparing Your Environment 

- [Section Introduction Preparing Your Environment](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Preparing-Your-Environment/Section-Introduction-Preparing-Your-Environment/page.md): Guide to install and verify Terraform, configure VS Code, set cloud provider credentials for AWS Azure GitHub, and run basic Terraform workflow commands
- [Install Terraform on MacOS and Linux](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Preparing-Your-Environment/Install-Terraform-on-MacOS-and-Linux/page.md): Installing Terraform on macOS and Linux using Homebrew, package managers, manual binaries, and automated scripts, with troubleshooting and exam version guidance
- [Install Terraform on Microsoft Windows](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Preparing-Your-Environment/Install-Terraform-on-Microsoft-Windows/page.md): Instructions to install and verify Terraform on Windows, covering manual binary placement in PATH and package manager options WinGet and Chocolatey with examples and troubleshooting tips
- [Installing Microsoft Visual Studio Code IDE](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Preparing-Your-Environment/Installing-Microsoft-Visual-Studio-Code-IDE/page.md): Guide to downloading, installing, and configuring Visual Studio Code, opening workspaces, using the integrated terminal and source control, and installing recommended extensions for Terraform development.
- [Setting Up AWS Credentials for Terraform](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Preparing-Your-Environment/Setting-Up-AWS-Credentials-for-Terraform/page.md): Guide to creating an AWS IAM user, generating access keys, and configuring credentials for Terraform with example configuration and security best practices.
- [Setting Up Azure Credentials for Terraform](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Preparing-Your-Environment/Setting-Up-Azure-Credentials-for-Terraform/page.md): Explains how to authenticate Terraform with Azure using Azure CLI, environment variables, service principals, or managed identities and run terraform plan and apply.
- [Setting Up GitHub Credentials for Terraform](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Preparing-Your-Environment/Setting-Up-GitHub-Credentials-for-Terraform/page.md): Guide to creating and configuring a GitHub fine-grained personal access token and GITHUB_TOKEN environment variable so Terraform can authenticate and manage repositories with proper permissions.

### Terraform Foundations

- [Section Introduction Terraform Foundations](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-Foundations/Section-Introduction-Terraform-Foundations/page.md): Introductory guide to Terraform fundamentals, why teams use it, core concepts, common commands, workflows, state management, modules, and hands-on exam preparation
- [Introduction to Terraform](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-Foundations/Introduction-to-Terraform/page.md): Introductory guide to HashiCorp Terraform, explaining HCL, infrastructure as code, benefits, provider ecosystem, provisioning workflows, modules, state management, and practical next steps
- [Learn the Basics of HashiCorp Configuration Language HCL](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-Foundations/Learn-the-Basics-of-HashiCorp-Configuration-Language-HCL/page.md): Introduction to HashiCorp Configuration Language explaining HCL syntax, structure, Terraform usage, resource and data blocks, style recommendations, and basic workflow for authoring infrastructure-as-code
- [Lets Look at Resource Referencing with Demo](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-Foundations/Lets-Look-at-Resource-Referencing-with-Demo/page.md): Guide to Terraform resource referencing with HCL demo, dependency graphs, formatting, file organization, and best practices for secure maintainable infrastructure
- [Learn about Best Practices for HCL](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-Foundations/Learn-about-Best-Practices-for-HCL/page.md): Practical best practices for HCL Terraform to improve maintainability, collaboration, and scalability, covering file naming, formatting, modules, secrets handling, documentation, and tooling
- [Core Components and Benefits of Terraform](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-Foundations/Core-Components-and-Benefits-of-Terraform/page.md): Overview of Terraform core components and benefits, explaining core, providers, resources, state, and modules for building reusable, predictable infrastructure and team collaboration
- [Which Terraform Version Should You Use](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-Foundations/Which-Terraform-Version-Should-You-Use/page.md): Guide comparing Terraform CLI, Terraform Cloud, and Terraform Enterprise to help choose the right edition for learning, team collaboration, or enterprise governance.
- [Comparing Terraform to Other Tools](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-Foundations/Comparing-Terraform-to-Other-Tools/page.md): Explains Terraform versus cloud-native and config management tools, highlighting differences, use cases, and when to combine provisioning with in-VM configuration
- [Declarative vs Imperative Why Terraform Works the Way It Does](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-Foundations/Declarative-vs-Imperative-Why-Terraform-Works-the-Way-It-Does/page.md): Describes why Terraform uses a declarative infrastructure model versus imperative scripts, highlighting dependency graph, state management, minimal changes, and plan before apply workflow

### The Core Terraform Workflow

- [Section Introduction Terraform Workflow](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/The-Core-Terraform-Workflow/Section-Introduction-Terraform-Workflow/page.md): Overview of the Terraform workflow and best practices for writing configurations, managing state, planning, applying, destroying, and integrating infrastructure as code into CI/CD
- [Intro to the Terraform Workflow](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/The-Core-Terraform-Workflow/Intro-to-the-Terraform-Workflow/page.md): Overview of Terraform's core Write Plan Apply workflow, including init, planning, applying, HCL configuration, best practices, and common commands.
- [Terraform Init](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/The-Core-Terraform-Workflow/Terraform-Init/page.md): Explains terraform init, how it initializes providers, modules, backend, the .terraform directory and lock file, and when to run and manage these artifacts.
- [Terraform Plan](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/The-Core-Terraform-Workflow/Terraform-Plan/page.md): Guide explaining Terraform plan command which generates a dry-run execution plan showing resource changes, refresh behavior, symbols, saving plans, and best practices to review before applying
- [Understanding the Resource Graph](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/The-Core-Terraform-Workflow/Understanding-the-Resource-Graph/page.md): Explains how Terraform builds and uses a dependency graph to determine resource ordering, parallelism, and when to use implicit references versus explicit depends_on.
- [Terraform Apply](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/The-Core-Terraform-Workflow/Terraform-Apply/page.md): Describes terraform apply execution, state locking, incremental updates, lack of automatic rollback, operation modes and best practices for safely applying infrastructure changes.
- [Terraform Destroy](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/The-Core-Terraform-Workflow/Terraform-Destroy/page.md): Explains how to safely remove Terraform-managed infrastructure using terraform destroy, targeted destroys, and configuration-first workflows while highlighting best practices and warnings.
- [Terraform Validate](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/The-Core-Terraform-Workflow/Terraform-Validate/page.md): Explains terraform validate, an offline local syntax and schema check for Terraform configurations that requires terraform init and does not call provider APIs.

### Terraform CLI

- [Section Introduction Terraform CLI](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-CLI/Section-Introduction-Terraform-CLI/page.md): Overview of Terraform CLI commands, workflow, and best practices for managing infrastructure as code, state, and safe change application across providers and environments.
- [Introduction to the Terraform CLI](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-CLI/Introduction-to-the-Terraform-CLI/page.md): Overview of Terraform CLI command structure, workflow, common subcommands, environment variables, and best practices for managing infrastructure as code
- [Demo Terraform CLI](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-CLI/Demo-Terraform-CLI/page.md): Walks through an end-to-end Terraform CLI workflow using the random provider, covering create, format, init, plan, apply, inspect state and destroy resources.
- [Making the Most of the Terraform CLI](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-CLI/Making-the-Most-of-the-Terraform-CLI/page.md): Guide to Terraform CLI productivity features, enabling autocomplete, using built-in help, and formatting configurations with terraform fmt to improve speed, accuracy, and consistent style.
- [Demo Making the Most of the Terraform CLI](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-CLI/Demo-Making-the-Most-of-the-Terraform-CLI/page.md): Practical guide to Terraform CLI features, plan customization flags, and using environment variables for input variables and provider authentication.

### Terraform File Structure and Organization

- [Terraform File Structure and Organization](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-File-Structure-and-Organization/Terraform-File-Structure-and-Organization/page.md): Organizing Terraform files, state, environments, and best practices for collaboration, secrets management, and reusable modules.

### Terraform Configuration - Fundamentals

- [HCL Basics Understanding Block Structure](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-Configuration-Fundamentals/HCL-Basics-Understanding-Block-Structure/page.md): Overview of Terraform HCL block structure, explaining block anatomy, common block types, meta-arguments, examples, modules, and import workflow for infrastructure as code
- [Connecting to Cloud Platforms with Provider Blocks](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-Configuration-Fundamentals/Connecting-to-Cloud-Platforms-with-Provider-Blocks/page.md): Explains Terraform provider blocks, their configuration, authentication, version pinning, initialization, and best practices for securely connecting Terraform to cloud platforms and services
- [Using Multiple Providers in Your Configuration](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-Configuration-Fundamentals/Using-Multiple-Providers-in-Your-Configuration/page.md): Explains using multiple Terraform provider blocks and aliases to manage resources across different accounts or regions and select specific provider configurations per resource.
- [Creating Infrastructure with Resource Blocks](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-Configuration-Fundamentals/Creating-Infrastructure-with-Resource-Blocks/page.md): Explains Terraform resource blocks including structure, arguments, provider mapping, examples, dependencies, and best practices for defining and managing infrastructure as code.
- [Reading Existing Resources with Data Sources](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-Configuration-Fundamentals/Reading-Existing-Resources-with-Data-Sources/page.md): Describes Terraform data sources used to query existing infrastructure, expose attributes for resource configuration, and avoid hard coding provider IDs
- [Parameterizing Configurations with Input Variables](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-Configuration-Fundamentals/Parameterizing-Configurations-with-Input-Variables/page.md): Explains using Terraform input variables to parameterize modules for reusable, environment aware, and maintainable infrastructure
- [Defining Variable Types](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-Configuration-Fundamentals/Defining-Variable-Types/page.md): Explains Terraform variable types including primitives string number bool and collections list map set with examples, usage, validation, and best practices for safe configurable infrastructure.
- [Assigning Variable Values and Understanding Precedence](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-Configuration-Fundamentals/Assigning-Variable-Values-and-Understanding-Precedence/page.md): Explains Terraform variable assignment methods and layered precedence among defaults, environment variables, tfvars files, and CLI flags with best practices for secure, predictable configurations.
- [Exposing Configuration Data with Output Values](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-Configuration-Fundamentals/Exposing-Configuration-Data-with-Output-Values/page.md): How Terraform output blocks expose and manage configuration values like IPs, DNS names, IDs and secrets, including examples, commands, sensitivity handling, and best practices.
- [Controlling Terraform Behavior and Settings](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-Configuration-Fundamentals/Controlling-Terraform-Behavior-and-Settings/page.md): Explains the terraform block for locking CLI and provider versions, configuring remote state backends, and enforcing consistent team workflows and versioning best practices

### Understading and Managing Terraform State 

- [Section Intro Terraform State](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Understading-and-Managing-Terraform-State/Section-Intro-Terraform-State/page.md): Overview of Terraform state including what it stores, how Terraform uses state during plan and apply, collaboration risks, and best practices for secure shared backends
- [Introduction to Terraform State](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Understading-and-Managing-Terraform-State/Introduction-to-Terraform-State/page.md): Explains Terraform state as the authoritative mapping between configuration and real infrastructure, its importance, commands, and best practices for safe collaborative state management.
- [Remote State Configuration](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Understading-and-Managing-Terraform-State/Remote-State-Configuration/page.md): Explains configuring Terraform remote state backends, S3 and Azure examples, state locking, security best practices, and when to use remote versus local state for teams and production
- [Demo Remote State Configuration](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Understading-and-Managing-Terraform-State/Demo-Remote-State-Configuration/page.md): Guide to configuring Terraform remote state using AWS S3 backend with optional DynamoDB locking and KMS encryption, including bucket setup, backend configuration, initialization, and verification.
- [Demo Migrate Your State to a Remote State Configuration](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Understading-and-Managing-Terraform-State/Demo-Migrate-Your-State-to-a-Remote-State-Configuration/page.md): Guide to migrating Terraform state between local files and an S3 remote backend, including configuration, migration commands, and optional DynamoDB state locking
- [Demo Inspecting Terraform State using the CLI](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Understading-and-Managing-Terraform-State/Demo-Inspecting-Terraform-State-using-the-CLI/page.md): Inspect Terraform state from the CLI using state list, state show, and show to view resource IDs, network attributes, tags, and full state dumps
- [Understanding State Drift Visual Walkthrough Lightboard](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Understading-and-Managing-Terraform-State/Understanding-State-Drift-Visual-Walkthrough-Lightboard/page.md): Explains Terraform state drift, how plan detects mismatches, and practical ways to reconcile by reverting or adopting external changes while maintaining IaC best practices.
- [What Happens if You Lose State Visual Walkthrough Lightboard](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Understading-and-Managing-Terraform-State/What-Happens-if-You-Lose-State-Visual-Walkthrough-Lightboard/page.md): Explains consequences of losing Terraform state and recovery methods including restoring state, re-importing resources, and best practices to prevent state loss.
- [Demo Detecting State Drift with Refresh Only Mode](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Understading-and-Managing-Terraform-State/Demo-Detecting-State-Drift-with-Refresh-Only-Mode/page.md): Shows how to detect and handle Terraform state drift using refresh-only plans, choose to enforce configuration or accept provider changes, and update code to keep resources in sync.

### Marking Code Reusable 

- [Using Built In Functions to Standardize Code](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Marking-Code-Reusable/Using-Built-In-Functions-to-Standardize-Code/page.md): Guide on using Terraform built-in functions to standardize infrastructure-as-code by simplifying naming, sizing, network calculations, and collection type conversions for reusable, consistent modules.
- [Enhancing Code with Dynamic Values](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Marking-Code-Reusable/Enhancing-Code-with-Dynamic-Values/page.md): Using variables, data sources, locals, and interpolation to replace hard-coded values so Terraform configurations are reusable, adaptable, and safe across environments, accounts, and regions
- [Using Locals to Avoid Code Duplication](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Marking-Code-Reusable/Using-Locals-to-Avoid-Code-Duplication/page.md): Guide explaining how to use Terraform locals to centralize shared values, reduce duplication, and simplify naming, tagging, and derived expressions.
- [Using the count Meta Argument](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Marking-Code-Reusable/Using-the-count-Meta-Argument/page.md): Explains Terraform's count meta-argument for creating multiple resource instances using count.index, differences from for_each, and tips to manage indexing and identity stability.
- [Using the for each Meta Argument](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Marking-Code-Reusable/Using-the-for-each-Meta-Argument/page.md): Explains Terraform's for_each meta-argument for creating uniquely configured resources, how it differs from count, usage of each.key and each.value, and addressing instances by key.

### Refactoring Terraform State

- [Refactoring Terraform State](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Refactoring-Terraform-State/Refactoring-Terraform-State/page.md): Explains configuration-driven Terraform state refactoring using moved, removed, and import blocks for safe, auditable renames, moves, and imports.
- [Moving Resources with the moved Block](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Refactoring-Terraform-State/Moving-Resources-with-the-moved-Block/page.md): Explains Terraform's moved block for safely refactoring resource addresses to rename or relocate resources into modules by updating state without recreating or destroying infrastructure.
- [Removing Resources with the removed Block](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Refactoring-Terraform-State/Removing-Resources-with-the-removed-Block/page.md): Explains Terraform removed block to safely remove resources from state without destroying infrastructure, providing workflow steps, examples, use cases, and differences from the moved block.

### Terraform Modules

- [Introduction to Modules](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-Modules/Introduction-to-Modules/page.md): Explains Terraform modules including structure, usage, sources, versioning and benefits for building reusable, consistent, maintainable infrastructure
- [Understanding Parent and Child Modules](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-Modules/Understanding-Parent-and-Child-Modules/page.md): Explains Terraform parent and child modules, structure, sourcing, variable passing, outputs, and composing reusable infrastructure components
- [Module Versioning and Version Constraints](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-Modules/Module-Versioning-and-Version-Constraints/page.md): Discusses Terraform module versioning, semantic version constraints, pinning modules, upgrade procedures, and best practices to avoid breaking changes.
- [Calling Modules with the Module Block](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-Modules/Calling-Modules-with-the-Module-Block/page.md): Explains Terraform module blocks for calling reusable modules to organize, reuse, and version infrastructure code, with examples, attributes, reuse patterns, and best practices.
- [Understanding Variable Scope in Modules](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-Modules/Understanding-Variable-Scope-in-Modules/page.md): Explains Terraform module variable scoping, how to pass inputs to child modules, expose outputs to callers, and manage defaults for reusable, isolated modules.
- [Demo Using Modules from the Terraform Registry](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-Modules/Demo-Using-Modules-from-the-Terraform-Registry/page.md): Guide on using Terraform Registry modules to provision an AWS VPC and security group, exporting and passing module outputs between modules.
- [Demo Writing and Using Your Own Modules](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-Modules/Demo-Writing-and-Using-Your-Own-Modules/page.md): Guide to creating reusable local Terraform modules and composing them to provision AWS VPC subnet and EC2 resources while managing inputs outputs and module wiring

### Securing Terraform Configurations

- [Why Secrets in Terraform Are Risky](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Securing-Terraform-Configurations/Why-Secrets-in-Terraform-Are-Risky/page.md): Explains risks of storing secrets in Terraform, where secrets leak, and practical controls to protect state, logs, version control, and plan artifacts.
- [Protecting Secrets in Your Configuration](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Securing-Terraform-Configurations/Protecting-Secrets-in-Your-Configuration/page.md): Strategies to prevent secret leakage in Terraform configurations using sensitive variables, environment injection, and external secret managers while securing state and access
- [Hiding Secrets with Sensitive Variables and Outputs](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Securing-Terraform-Configurations/Hiding-Secrets-with-Sensitive-Variables-and-Outputs/page.md): Explains using Terraform sensitive variables and outputs to redact secrets in CLI output, and recommends secure state handling and secret management practices
- [Keeping Secrets Out of Version Control with Environment Variables](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Securing-Terraform-Configurations/Keeping-Secrets-Out-of-Version-Control-with-Environment-Variables/page.md): Explains using environment variables and CI/CD secret stores to avoid committing secrets in Terraform and outlines protecting Terraform state and sensitive variables
- [Reading Secrets from External Sources](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Securing-Terraform-Configurations/Reading-Secrets-from-External-Sources/page.md): Best practices for retrieving and protecting secrets in Terraform by using external secret managers, marking variables sensitive, injecting via environment variables, and securing Terraform state
- [Securing State Files](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Securing-Terraform-Configurations/Securing-State-Files/page.md): Guidance on securing Terraform state files using remote backends, encryption, access controls, state locking, auditing, and safe migration to prevent secret exposure.
- [Keeping Secrets Out of State with Ephemeral Values and Write only Arguments](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Securing-Terraform-Configurations/Keeping-Secrets-Out-of-State-with-Ephemeral-Values-and-Write-only-Arguments/page.md): Techniques to keep secrets out of Terraform state using ephemeral values, ephemeral resources, and write only arguments to prevent secrets persisting in plans or state
- [Working with HashiCorp Vault Patterns and Approaches](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Securing-Terraform-Configurations/Working-with-HashiCorp-Vault-Patterns-and-Approaches/page.md): Using HashiCorp Vault to provide dynamic short-lived credentials for Terraform to reduce credential sprawl, improve auditability, and avoid persisting secrets in state.

### Terraform Troubleshooting

- [Debugging Terraform](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-Troubleshooting/Debugging-Terraform/page.md): Guide for enabling and capturing Terraform internal logs, using TF_LOG variables and TF_LOG_PATH, choosing log levels, targeting Core or providers, and best practices for secure debugging
- [Demo Debugging Terraform](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/Terraform-Troubleshooting/Demo-Debugging-Terraform/page.md): How to enable and use Terraform logging for detailed TRACE debugging, including configuration, log setup, interpreting traces, and redacting sensitive data

### HCP Terraform

- [HCP Terraform Overview longer video](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/HCP-Terraform/HCP-Terraform-Overview-longer-video/page.md): Overview of HCP Terraform, a managed HashiCorp platform that centralizes remote state, collaboration, remote execution, cost estimation, and governance while preserving Terraform CLI workflows.
- [Demo Setting Up Your HCP Terraform Account](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/HCP-Terraform/Demo-Setting-Up-Your-HCP-Terraform-Account/page.md): Guide to creating and configuring an HCP Terraform account, verifying email, setting up an organization, security settings, API tokens, and connecting workspaces and VCS for remote runs.
- [Getting Connected and Authenticated with HCP Terraform](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/HCP-Terraform/Getting-Connected-and-Authenticated-with-HCP-Terraform/page.md): How to configure Terraform cloud block and authenticate with terraform login or TF_TOKEN to connect local Terraform to HCP, plus token types and security practices
- [Understanding HCP Terraform Workspaces](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/HCP-Terraform/Understanding-HCP-Terraform-Workspaces/page.md): Explains HCP Terraform workspaces, differences from CLI workspaces, their contents, workflows, and best practices for team and VCS driven infrastructure management.
- [Demo Creating a Workspace](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/HCP-Terraform/Demo-Creating-a-Workspace/page.md): Guide to creating and configuring an HCP Terraform workspace, migrating local Terraform runs, managing settings, variables, execution modes, and integrating VCS or CLI workflows
- [HCP Terraform Execution Modes](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/HCP-Terraform/HCP-Terraform-Execution-Modes/page.md): Guide explaining HCP Terraform execution modes remote local and agent, their behaviors, trade offs, networking considerations, and per workspace selection guidance
- [Demo Migrating State to HCP Terraform](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/HCP-Terraform/Demo-Migrating-State-to-HCP-Terraform/page.md): Guide to migrating local Terraform configuration and terraform.tfstate into an HCP Terraform workspace, enabling remote execution, authentication, and workspace credential setup.
- [Demo Automating Runs with VCS Driven Workflow](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/HCP-Terraform/Demo-Automating-Runs-with-VCS-Driven-Workflow/page.md): Converting a Terraform Cloud workspace to a VCS-driven workflow where Git commits and pull requests automatically trigger Terraform plans with options for reviewing and auto-applying changes
- [Organizing Your Work with Projects](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/HCP-Terraform/Organizing-Your-Work-with-Projects/page.md): Using Projects in Terraform Cloud to group workspaces, apply shared settings and permissions, and simplify workspace management and scalability
- [Demo Working with Projects](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/HCP-Terraform/Demo-Working-with-Projects/page.md): Guide to creating and managing Projects in Terraform Cloud, configuring defaults and team access, moving workspaces into projects, verifying assignments, and safely deleting projects
- [Sharing Variables with Variable Sets](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/HCP-Terraform/Sharing-Variables-with-Variable-Sets/page.md): Explains using variable sets in Terraform Cloud to centrally manage and apply reusable input and environment variables across workspaces, projects, scopes, and override precedence.
- [Demo Creating Variable Sets](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/HCP-Terraform/Demo-Creating-Variable-Sets/page.md): How to create and manage Terraform Cloud variable sets at organization and project levels, apply scopes to workspaces, and understand precedence and Priority for overriding variables.
- [HCP Terraform Teams Permissions](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/HCP-Terraform/HCP-Terraform-Teams-Permissions/page.md): Explains HCP Terraform user, team, and permissions models including scope hierarchy, role based access, Owners team, team visibility, tokens, and best practices.
- [Private Registry](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/HCP-Terraform/Private-Registry/page.md): Explains HCP Terraform Private Registry, its purpose, features, versioning, publishing workflow, private and curated modules, and how to reference organization scoped modules in Terraform.
- [Policy Enforcement using Sentinel OPA Part 1](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/HCP-Terraform/Policy-Enforcement-using-Sentinel-OPA-Part-1/page.md): Explains HCP Terraform policy enforcement using Sentinel and OPA to evaluate Terraform plans and automatically block non compliant changes during CI/CD
- [Policy Enforcement using Sentinel OPA Part 2](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/HCP-Terraform/Policy-Enforcement-using-Sentinel-OPA-Part-2/page.md): Explains HCP Terraform policy enforcement with Sentinel and OPA, comparing enforcement levels, policy set management, capabilities and limits, and practical governance best practices.
- [Additional HCP Terraform Features](https://notes.kodekloud.com/docs/HashiCorp-Certified-Terraform-Associate-004/HCP-Terraform/Additional-HCP-Terraform-Features/page.md): Overview of additional HCP Terraform workspace features like health assessments, run triggers, change requests, and Explorer, including use cases, configuration, and exam relevance.
