AWS Amazon S3 Gateway

This page shows how to write Terraform for Amazon S3 Gateway and write them securely.

aws_storagegateway_gateway (Terraform)

The Gateway in Amazon S3 can be configured in Terraform with the resource name aws_storagegateway_gateway. The following sections describe 3 examples of how to use the resource and its parameters.

Example Usage from GitHub

main.tf#L9
resource "aws_storagegateway_gateway" "this" {
  gateway_ip_address = var.gateway_ip
  gateway_name     = "storage-gateway"
  gateway_timezone = "GMT"
  gateway_type     = "FILE_S3"

main.tf#L7
resource "aws_storagegateway_gateway" "this" {
  activation_key                              = var.activation_key
  average_download_rate_limit_in_bits_per_sec = var.average_download_rate_limit_in_bits_per_sec
  average_upload_rate_limit_in_bits_per_sec   = var.average_upload_rate_limit_in_bits_per_sec
  cloudwatch_log_group_arn                    = var.cloudwatch_log_group_arn
  gateway_ip_address                          = var.gateway_ip_address
StorageGateway-ec2.tf#L31
resource "aws_storagegateway_gateway" "storage-gateway" {

  gateway_ip_address = aws_instance.ec2-FileGateway.public_ip
  gateway_name       = "storage-gateway"
  gateway_timezone   = "GMT+9:00"
  gateway_type       = "FILE_S3"

Review your Terraform file for AWS best practices

Shisho Cloud, our free checker to make sure your Terraform configuration follows best practices, is available (beta).

Parameters

Explanation in Terraform Registry

Manages an AWS Storage Gateway file, tape, or volume gateway in the provider region.

NOTE: The Storage Gateway API requires the gateway to be connected to properly return information after activation. If you are receiving The specified gateway is not connected errors during resource creation (gateway activation), ensure your gateway instance meets the Storage Gateway requirements.

Tips: Best Practices for The Other AWS Amazon S3 Resources

In addition to the aws_s3_bucket_public_access_block, AWS Amazon S3 has the other resources that should be configured for security reasons. Please check some examples of those resources and precautions.

risk-label

aws_s3_bucket_public_access_block

Ensure S3 bucket-level Public Access Block restricts public bucket policies

It is better to enable S3 bucket-level Public Access Block if you don't need public buckets.

risk-label

aws_s3_bucket

Ensure S3 bucket access policy is well configured

It is better to configure the S3 bucket access policy properly to limit it unless explicitly required.

Review your AWS Amazon S3 settings

In addition to the above, there are other security points you should be aware of making sure that your .tf files are protected in Shisho Cloud.

CloudFormation Example

CloudFormation code does not have the related resource.

Frequently asked questions

What is AWS Amazon S3 Gateway?

AWS Amazon S3 Gateway is a resource for Amazon S3 of Amazon Web Service. Settings can be wrote in Terraform.

Where can I find the example code for the AWS Amazon S3 Gateway?

For Terraform, the andy-wolf/terraform-modules, niveklabs/aws and EASThyeok/soldeskTEAM1 source code examples are useful. See the Terraform Example section for further details.

security-icon

Automate config file reviews on your commits

Fix issues in your infrastructure as code with auto-generated patches.