[Yandex Cloud documentation](../../index.md) > [Terraform in Yandex Cloud](../index.md) > [Concepts](index.md) > Providers

# Providers

In Terraform, a provider is a component that enables interaction with various cloud and infrastructure services. Technically, providers are links between Terraform and target platforms such as AWS, Google Cloud, Azure, Docker, and others.

Providers' main functions:

* Supplying Terraform with resources and data it needs to describe and manage the infrastructure.
* Implementing the logic required to create, update, read, and delete resources on relevant platforms.
* Processing authentication and authorization for Terraform to securely communicate with the APIs of cloud services.
* Converting configurations written in [HCL](https://github.com/hashicorp/hcl/blob/main/hclsyntax/spec.md) into API calls the target services can understand.

In Terraform, each provider has its own collection of resources representing various infrastructure components (virtual machines, networks, databases, etc.). To use a provider in a project, you should first declare it in the configuration file stating the necessary credentials and connection parameters. Here is an example of connecting a Yandex Cloud Terraform provider:

   
   ```hcl
   terraform {
     required_providers {
       yandex = {
         source = "yandex-cloud/yandex"
       }
     }
     required_version = ">= 0.13"
   }

   provider "yandex" {
     zone = "<default_availability_zone>"
   }
   ```



## Useful links {#see-also}

* [Getting started with Terraform](../quickstart.md)
* [Tutorials on the use of Terraform in Yandex Cloud](../tutorials/index.md)