【问题标题】:Unable to create a s3 bucket with versioning using terraform无法使用 terraform 创建带有版本控制的 s3 存储桶
【发布时间】:2020-02-01 20:12:18
【问题描述】:

我正在 AWS 上使用 Terraform 创建一个 S3 存储桶。

我无法使用 terraform 创建带有版本控制的 s3 存储桶。当我尝试应用 terraform 时,我收到“设置 S3 版本时出错:AccessDenied”。

Terraform 计划没有问题。

provider "aws" {
  region = "us-east-1"
}

variable "instance_name" {}
variable "environment" {}


resource "aws_s3_bucket" "my_dr_bucket" {
  bucket = "${var.instance_name}-dr-us-west-2"
  region = "us-west-2"
  acl    = "private"
  versioning {
    enabled = "true"
  }
}

出现以下错误: 错误:放置 S3 版本时出错:AccessDenied: Access Denied 状态码:403,请求ID:21EBBB358558C617

【问题讨论】:

  • 您用于运行 Terraform 的 IAM 帐户的权限是什么?也许它没有所有 S3 权限?
  • 我已将管理员角色分配给 iam 用户。

标签: amazon-web-services terraform


【解决方案1】:

确保您在为您的提供商配置的同一区域中创建 S3 存储桶。

【讨论】:

    【解决方案2】:

    下面的代码解决了这个问题:

        provider "aws" {
      region = "us-east-1"
    }
    
    provider "aws" {
      alias  = "west"
      region = "us-west-2"
    }
    
    variable "instance_name" {}
    variable "environment" {}
    
    resource "aws_s3_bucket" "my_dr_bucket" {
      provider = "aws.west"
      bucket = "${var.instance_name}-dr-us-west-2"
      region = "us-west-2"
      acl    = "private"
      versioning {
              enabled = true
      }
    }
    

    【讨论】:

      猜你喜欢
      • 2023-03-07
      • 2021-08-14
      • 2019-12-21
      • 1970-01-01
      • 2022-01-12
      • 2022-11-03
      • 2011-12-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多