簡體   English   中英

如何在 terraform 的 AWS S3 存儲桶策略中獲取 sid

[英]how to get sid in AWS S3 bucket policy in terraform

我想將策略附加到 S3 存儲桶資源。

我的 terraform 基礎設施,

resource "aws_s3_bucket" "storage" {
  bucket = "${var.service}-${local.stage}-storage"
  acl    = "public-read"

  tags = {
    Service = var.service
    Stage   = local.stage
  }

  cors_rule {
    allowed_headers = [
      "*"
    ]
    allowed_methods = [
      "GET",
      "HEAD"
    ]
    allowed_origins = [
      "*"
    ]
    max_age_seconds = 3000
  }
}

此存儲桶用於 web static 文件托管。我需要公開存儲桶策略。

我在 terraform 中的保單,

resource "aws_s3_bucket_policy" "storage-policy" {
  bucket = aws_s3_bucket.storage.id

  policy = <<POLICY
{
  "Version": "2012-10-17",
  "Id": "????????",
  "Statement": [
    {
      "Sid": "????????",
      "Effect": "Allow",
      "Principal": "*",
      "Action": "*",
      "Resource": "arn:aws:s3:::BUCKET-NAME/*"
    }
  ]
}
POLICY
}

在這段代碼中,我需要獲取 Id、Sid 字段值。 我怎么能得到這個? 謝謝。

IdSid是你想要的任何東西。 例如:

resource "aws_s3_bucket_policy" "storage-policy" {
  bucket = aws_s3_bucket.storage.id

  policy = <<POLICY
{
  "Version": "2012-10-17",
  "Id": "my-bucket-polict",
  "Statement": [
    {
      "Sid": "allow-all-access",
      "Effect": "Allow",
      "Principal": "*",
      "Action": "*",
      "Resource": "arn:aws:s3:::BUCKET-NAME/*"
    }
  ]
}
POLICY
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM