Difference between revisions of "Terraform resources: aws s3 bucket policy"

From wikieduonline
Jump to navigation Jump to search
Line 4: Line 4:
  
 
== Official example ==
 
== Official example ==
<pre>
 
resource "aws_s3_bucket" "example" {
 
  bucket = "my-tf-test-bucket"
 
}
 
  
resource "aws_s3_bucket_policy" "allow_access_from_another_account" {
+
resource "aws_s3_bucket" "example" {
  bucket = aws_s3_bucket.example.id
+
  bucket = "my-tf-test-bucket"
  policy = [[data.]]aws_iam_policy_document.allow_access_from_another_account.json
+
}
}
+
 +
resource "aws_s3_bucket_policy" "allow_access_from_another_account" {
 +
  bucket = aws_s3_bucket.example.id
 +
  policy = [[data.]]aws_iam_policy_document.allow_access_from_another_account.json
 +
}
  
 +
<pre>
 
data "aws_iam_policy_document" "allow_access_from_another_account" {
 
data "aws_iam_policy_document" "allow_access_from_another_account" {
 
   statement {
 
   statement {

Revision as of 13:53, 2 March 2023

aws_s3_bucket_policy

Official example

resource "aws_s3_bucket" "example" {
  bucket = "my-tf-test-bucket"
}

resource "aws_s3_bucket_policy" "allow_access_from_another_account" {
  bucket = aws_s3_bucket.example.id
  policy = data.aws_iam_policy_document.allow_access_from_another_account.json
}
data "aws_iam_policy_document" "allow_access_from_another_account" {
  statement {
    principals {
      type        = "AWS"
      identifiers = ["123456789012"]
    }

    actions = [
      "s3:GetObject",
      "s3:ListBucket",
    ]

    resources = [
      aws_s3_bucket.example.arn,
      "${aws_s3_bucket.example.arn}/*",
    ]
  }
}

See also

Advertising: