2019-07-31 15:23:20 -04:00
|
|
|
resource "aws_iam_user" "main" {
|
|
|
|
name = var.bucket_name
|
2019-07-31 13:02:36 -04:00
|
|
|
|
|
|
|
tags = {
|
2019-07-31 15:23:20 -04:00
|
|
|
Description = "User for ${var.bucket_name} S3 bucket"
|
2019-07-31 13:02:36 -04:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2019-07-31 15:23:20 -04:00
|
|
|
resource "aws_iam_access_key" "main" {
|
|
|
|
user = aws_iam_user.main.name
|
2019-07-31 13:02:36 -04:00
|
|
|
pgp_key = file("files/support@dap.ps.gpg")
|
|
|
|
}
|
|
|
|
|
2019-07-31 15:23:20 -04:00
|
|
|
resource "aws_s3_bucket" "main" {
|
|
|
|
bucket = var.bucket_name
|
2019-07-31 13:02:36 -04:00
|
|
|
acl = "private"
|
|
|
|
|
|
|
|
tags = {
|
2019-07-31 15:23:20 -04:00
|
|
|
Name = var.bucket_name
|
|
|
|
Desc = var.description
|
2019-07-31 13:02:36 -04:00
|
|
|
}
|
|
|
|
|
2019-07-31 15:23:31 -04:00
|
|
|
lifecycle {
|
|
|
|
prevent_destroy = true
|
|
|
|
}
|
2019-08-05 13:41:49 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
resource "aws_iam_user_policy" "main" {
|
|
|
|
name = "${var.bucket_name}-access"
|
|
|
|
user = "${aws_iam_user.main.name}"
|
2019-07-31 15:23:31 -04:00
|
|
|
|
2019-07-31 13:02:36 -04:00
|
|
|
policy = <<EOF
|
|
|
|
{
|
|
|
|
"Version": "2012-10-17",
|
|
|
|
"Statement": [
|
|
|
|
{
|
|
|
|
"Effect": "Allow",
|
2019-07-31 15:23:20 -04:00
|
|
|
"Action": ["s3:*"],
|
|
|
|
"Resource":["arn:aws:s3:::${var.bucket_name}/*"]
|
2019-07-31 13:02:36 -04:00
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
EOF
|
|
|
|
}
|