acl |
The acl config for bucket, NOTE: 'acl' conflicts with 'grant' and 'owner'. |
string |
"private" |
no |
block_public_acls |
Whether Amazon S3 should block public ACLs for this bucket. |
bool |
false |
no |
block_public_policy |
Whether Amazon S3 should block public bucket policies for this bucket. |
bool |
false |
no |
bucket_files |
Initial content for bucket, use acl and pattern params if you need more control. |
object({ path = string }) |
{ "path": "" } |
no |
bucket_iam_policy |
AWS bucket policy |
list(object({ effect = optional(string, "Allow") # Effect of the policy (Allow or Deny) actions = list(string) # Actions like sts:AssumeRole principals = any # Principals (e.g., AWS, Service, Federated) conditions = optional(any, []) # Optional conditions for assume role })) |
[] |
no |
bucket_intelligent_tiering |
Intelligent lifecycle policy |
list(object({ tier = string days = number })) |
[] |
no |
control_object_ownership |
Manage S3 Bucket Ownership Controls on this bucket or not. |
bool |
false |
no |
cors_rule |
List of maps containing rules for Cross-Origin Resource Sharing. |
any |
[] |
no |
create_iam_user |
Whether to create specific api access user to this created bucket. |
bool |
false |
no |
create_index_html |
Whether to create and initial index.html file with default data. |
bool |
false |
no |
event_notification_config |
n/a |
object({ target_type = string, // Target type for the S3 event notification, can be "sqs" or "null". Other target types can be implemented in the future. name_suffix = string, // Suffix to add to the target name. filter_prefix = string, // Prefix to filter object key names for the event notification. events = optional(list(string), ["s3:ObjectCreated:"]) // List of S3 events that trigger the notification. Defaults to "s3:ObjectCreated:". }) |
{ "events": [ "s3:ObjectCreated:*" ], "filter_prefix": "test/", "name_suffix": "event", "target_type": "null" } |
no |
grant |
The ACL policy grant. NOTE: conflicts with 'acl'. |
any |
[] |
no |
iam_user_actions |
The allowed actions that created user can perform on this created bucket. |
list(string) |
[ "s3:PutObject", "s3:ListBucket", "s3:GetObject", "s3:GetObjectVersion", "s3:GetBucketAcl", "s3:DeleteObject", "s3:DeleteObjectVersion", "s3:PutLifecycleConfiguration", "s3:PutObjectAcl" ] |
no |
iam_user_name |
The name of user, NOTE: this is optional and if it is not passed in use place the name will be generated based on bucket name. |
string |
"" |
no |
ignore_public_acls |
Whether Amazon S3 should ignore public ACLs for this bucket. |
bool |
false |
no |
name |
Bucket name. |
string |
n/a |
yes |
object_ownership |
Object ownership. |
string |
"BucketOwnerPreferred" |
no |
owner |
The Bucket owner's display name and ID. NOTE: Conflicts with 'acl'. |
map(string) |
{} |
no |
restrict_public_buckets |
Whether Amazon S3 should restrict public bucket policies for this bucket. |
bool |
false |
no |
versioning |
The versioning configuration for the created bucket. |
map(string) |
{} |
no |
website |
The website configuration for the created bucket. |
map(string) |
{} |
no |