[Yandex Cloud documentation](../index.md) > [Yandex Object Storage](index.md) > Terraform reference

# Terraform reference for Yandex Object Storage

With [Terraform](https://www.terraform.io/), you can quickly create a cloud infrastructure in Yandex Cloud and manage it using configuration files. These files store the infrastructure description written in HashiCorp Configuration Language (HCL). If you change the configuration files, Terraform automatically detects which part of your configuration is already deployed, and what should be added or removed.

Terraform is distributed under the [Business Source License](https://github.com/hashicorp/terraform/blob/main/LICENSE). The [Yandex Cloud provider for Terraform](https://github.com/yandex-cloud/terraform-provider-yandex) is distributed under the [MPL-2.0](https://www.mozilla.org/en-US/MPL/2.0/) license.


For more information about Terraform, see [this tutorial](../tutorials/infrastructure-management/terraform-quickstart.md#install-terraform).

## Resources {#resources}

Object Storage supports the following Terraform provider resources:

#|
|| **Terraform resource** | **Yandex Cloud resource** ||
|| [yandex_storage_bucket](../terraform/resources/storage_bucket.md) | [Bucket](concepts/bucket.md) ||
|| [yandex_storage_object](../terraform/resources/storage_object.md) | [Object](concepts/object.md) ||
|| [yandex_storage_bucket_iam_binding](../terraform/resources/storage_bucket_iam_binding.md) | 
[Configuring](operations/buckets/iam-access.md) access permissions for a bucket using Identity and Access Management.

{% note warning %}

You cannot use the [yandex_storage_bucket_iam_binding](../terraform/resources/storage_bucket_iam_binding.md) resource to assign [primitive roles](security/index.md#primitive-roles), such as `viewer`, `editor`, or `admin` for a bucket if the [yandex_storage_bucket_grant](../terraform/resources/storage_bucket_grant.md) resource or the `acl` or `grant` parameters of the [yandex_storage_bucket](../terraform/resources/storage_bucket.md) resource are used simultaneously.

{% endnote %}

||
|| [yandex_storage_bucket_grant](../terraform/resources/storage_bucket_grant.md) | [Configuring](operations/buckets/edit-acl.md) access permissions for a bucket using the [Object Storage ACL](concepts/acl.md).

One `yandex_storage_bucket` bucket can only be mapped to one `yandex_storage_bucket_grant` resource. Using multiple resources for a single bucket may lead to configuration errors.

{% note warning %}

You cannot use the [yandex_storage_bucket_grant](../terraform/resources/storage_bucket_grant.md) resource if the [yandex_storage_bucket_iam_binding](../terraform/resources/storage_bucket_iam_binding.md) resource is simultaneously used to assign [primitive roles](security/index.md#primitive-roles), such as `viewer`, `editor`, or `admin` for a bucket, or if the `acl` or `grant` parameters of the [yandex_storage_bucket](../terraform/resources/storage_bucket.md) resource are simultaneously in use.

{% endnote %}

||
|| [yandex_storage_bucket_policy](../terraform/resources/storage_bucket_policy.md) | [Managing](operations/buckets/policy.md) [bucket policies](concepts/policy.md) ||
|#