Try AWS Native preview for resources not in the classic version.
aws.s3.BucketObject
Explore with Pulumi AI
Try AWS Native preview for resources not in the classic version.
Provides an S3 object resource.
Example Usage
Encrypting with KMS Key
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var examplekms = new Aws.Kms.Key("examplekms", new()
{
Description = "KMS key 1",
DeletionWindowInDays = 7,
});
var examplebucket = new Aws.S3.BucketV2("examplebucket");
var exampleBucketAclV2 = new Aws.S3.BucketAclV2("exampleBucketAclV2", new()
{
Bucket = examplebucket.Id,
Acl = "private",
});
var exampleBucketObject = new Aws.S3.BucketObject("exampleBucketObject", new()
{
Key = "someobject",
Bucket = examplebucket.Id,
Source = new FileAsset("index.html"),
KmsKeyId = examplekms.Arn,
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/kms"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/s3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
examplekms, err := kms.NewKey(ctx, "examplekms", &kms.KeyArgs{
Description: pulumi.String("KMS key 1"),
DeletionWindowInDays: pulumi.Int(7),
})
if err != nil {
return err
}
examplebucket, err := s3.NewBucketV2(ctx, "examplebucket", nil)
if err != nil {
return err
}
_, err = s3.NewBucketAclV2(ctx, "exampleBucketAclV2", &s3.BucketAclV2Args{
Bucket: examplebucket.ID(),
Acl: pulumi.String("private"),
})
if err != nil {
return err
}
_, err = s3.NewBucketObject(ctx, "exampleBucketObject", &s3.BucketObjectArgs{
Key: pulumi.String("someobject"),
Bucket: examplebucket.ID(),
Source: pulumi.NewFileAsset("index.html"),
KmsKeyId: examplekms.Arn,
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.kms.Key;
import com.pulumi.aws.kms.KeyArgs;
import com.pulumi.aws.s3.BucketV2;
import com.pulumi.aws.s3.BucketAclV2;
import com.pulumi.aws.s3.BucketAclV2Args;
import com.pulumi.aws.s3.BucketObject;
import com.pulumi.aws.s3.BucketObjectArgs;
import com.pulumi.asset.FileAsset;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var examplekms = new Key("examplekms", KeyArgs.builder()
.description("KMS key 1")
.deletionWindowInDays(7)
.build());
var examplebucket = new BucketV2("examplebucket");
var exampleBucketAclV2 = new BucketAclV2("exampleBucketAclV2", BucketAclV2Args.builder()
.bucket(examplebucket.id())
.acl("private")
.build());
var exampleBucketObject = new BucketObject("exampleBucketObject", BucketObjectArgs.builder()
.key("someobject")
.bucket(examplebucket.id())
.source(new FileAsset("index.html"))
.kmsKeyId(examplekms.arn())
.build());
}
}
import pulumi
import pulumi_aws as aws
examplekms = aws.kms.Key("examplekms",
description="KMS key 1",
deletion_window_in_days=7)
examplebucket = aws.s3.BucketV2("examplebucket")
example_bucket_acl_v2 = aws.s3.BucketAclV2("exampleBucketAclV2",
bucket=examplebucket.id,
acl="private")
example_bucket_object = aws.s3.BucketObject("exampleBucketObject",
key="someobject",
bucket=examplebucket.id,
source=pulumi.FileAsset("index.html"),
kms_key_id=examplekms.arn)
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const examplekms = new aws.kms.Key("examplekms", {
description: "KMS key 1",
deletionWindowInDays: 7,
});
const examplebucket = new aws.s3.BucketV2("examplebucket", {});
const exampleBucketAclV2 = new aws.s3.BucketAclV2("exampleBucketAclV2", {
bucket: examplebucket.id,
acl: "private",
});
const exampleBucketObject = new aws.s3.BucketObject("exampleBucketObject", {
key: "someobject",
bucket: examplebucket.id,
source: new pulumi.asset.FileAsset("index.html"),
kmsKeyId: examplekms.arn,
});
resources:
examplekms:
type: aws:kms:Key
properties:
description: KMS key 1
deletionWindowInDays: 7
examplebucket:
type: aws:s3:BucketV2
exampleBucketAclV2:
type: aws:s3:BucketAclV2
properties:
bucket: ${examplebucket.id}
acl: private
exampleBucketObject:
type: aws:s3:BucketObject
properties:
key: someobject
bucket: ${examplebucket.id}
source:
fn::FileAsset: index.html
kmsKeyId: ${examplekms.arn}
Server Side Encryption with S3 Default Master Key
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var examplebucket = new Aws.S3.BucketV2("examplebucket");
var exampleBucketAclV2 = new Aws.S3.BucketAclV2("exampleBucketAclV2", new()
{
Bucket = examplebucket.Id,
Acl = "private",
});
var exampleBucketObject = new Aws.S3.BucketObject("exampleBucketObject", new()
{
Key = "someobject",
Bucket = examplebucket.Id,
Source = new FileAsset("index.html"),
ServerSideEncryption = "aws:kms",
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/s3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
examplebucket, err := s3.NewBucketV2(ctx, "examplebucket", nil)
if err != nil {
return err
}
_, err = s3.NewBucketAclV2(ctx, "exampleBucketAclV2", &s3.BucketAclV2Args{
Bucket: examplebucket.ID(),
Acl: pulumi.String("private"),
})
if err != nil {
return err
}
_, err = s3.NewBucketObject(ctx, "exampleBucketObject", &s3.BucketObjectArgs{
Key: pulumi.String("someobject"),
Bucket: examplebucket.ID(),
Source: pulumi.NewFileAsset("index.html"),
ServerSideEncryption: pulumi.String("aws:kms"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.s3.BucketV2;
import com.pulumi.aws.s3.BucketAclV2;
import com.pulumi.aws.s3.BucketAclV2Args;
import com.pulumi.aws.s3.BucketObject;
import com.pulumi.aws.s3.BucketObjectArgs;
import com.pulumi.asset.FileAsset;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var examplebucket = new BucketV2("examplebucket");
var exampleBucketAclV2 = new BucketAclV2("exampleBucketAclV2", BucketAclV2Args.builder()
.bucket(examplebucket.id())
.acl("private")
.build());
var exampleBucketObject = new BucketObject("exampleBucketObject", BucketObjectArgs.builder()
.key("someobject")
.bucket(examplebucket.id())
.source(new FileAsset("index.html"))
.serverSideEncryption("aws:kms")
.build());
}
}
import pulumi
import pulumi_aws as aws
examplebucket = aws.s3.BucketV2("examplebucket")
example_bucket_acl_v2 = aws.s3.BucketAclV2("exampleBucketAclV2",
bucket=examplebucket.id,
acl="private")
example_bucket_object = aws.s3.BucketObject("exampleBucketObject",
key="someobject",
bucket=examplebucket.id,
source=pulumi.FileAsset("index.html"),
server_side_encryption="aws:kms")
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const examplebucket = new aws.s3.BucketV2("examplebucket", {});
const exampleBucketAclV2 = new aws.s3.BucketAclV2("exampleBucketAclV2", {
bucket: examplebucket.id,
acl: "private",
});
const exampleBucketObject = new aws.s3.BucketObject("exampleBucketObject", {
key: "someobject",
bucket: examplebucket.id,
source: new pulumi.asset.FileAsset("index.html"),
serverSideEncryption: "aws:kms",
});
resources:
examplebucket:
type: aws:s3:BucketV2
exampleBucketAclV2:
type: aws:s3:BucketAclV2
properties:
bucket: ${examplebucket.id}
acl: private
exampleBucketObject:
type: aws:s3:BucketObject
properties:
key: someobject
bucket: ${examplebucket.id}
source:
fn::FileAsset: index.html
serverSideEncryption: aws:kms
Server Side Encryption with AWS-Managed Key
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var examplebucket = new Aws.S3.BucketV2("examplebucket");
var exampleBucketAclV2 = new Aws.S3.BucketAclV2("exampleBucketAclV2", new()
{
Bucket = examplebucket.Id,
Acl = "private",
});
var exampleBucketObject = new Aws.S3.BucketObject("exampleBucketObject", new()
{
Key = "someobject",
Bucket = examplebucket.Id,
Source = new FileAsset("index.html"),
ServerSideEncryption = "AES256",
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/s3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
examplebucket, err := s3.NewBucketV2(ctx, "examplebucket", nil)
if err != nil {
return err
}
_, err = s3.NewBucketAclV2(ctx, "exampleBucketAclV2", &s3.BucketAclV2Args{
Bucket: examplebucket.ID(),
Acl: pulumi.String("private"),
})
if err != nil {
return err
}
_, err = s3.NewBucketObject(ctx, "exampleBucketObject", &s3.BucketObjectArgs{
Key: pulumi.String("someobject"),
Bucket: examplebucket.ID(),
Source: pulumi.NewFileAsset("index.html"),
ServerSideEncryption: pulumi.String("AES256"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.s3.BucketV2;
import com.pulumi.aws.s3.BucketAclV2;
import com.pulumi.aws.s3.BucketAclV2Args;
import com.pulumi.aws.s3.BucketObject;
import com.pulumi.aws.s3.BucketObjectArgs;
import com.pulumi.asset.FileAsset;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var examplebucket = new BucketV2("examplebucket");
var exampleBucketAclV2 = new BucketAclV2("exampleBucketAclV2", BucketAclV2Args.builder()
.bucket(examplebucket.id())
.acl("private")
.build());
var exampleBucketObject = new BucketObject("exampleBucketObject", BucketObjectArgs.builder()
.key("someobject")
.bucket(examplebucket.id())
.source(new FileAsset("index.html"))
.serverSideEncryption("AES256")
.build());
}
}
import pulumi
import pulumi_aws as aws
examplebucket = aws.s3.BucketV2("examplebucket")
example_bucket_acl_v2 = aws.s3.BucketAclV2("exampleBucketAclV2",
bucket=examplebucket.id,
acl="private")
example_bucket_object = aws.s3.BucketObject("exampleBucketObject",
key="someobject",
bucket=examplebucket.id,
source=pulumi.FileAsset("index.html"),
server_side_encryption="AES256")
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const examplebucket = new aws.s3.BucketV2("examplebucket", {});
const exampleBucketAclV2 = new aws.s3.BucketAclV2("exampleBucketAclV2", {
bucket: examplebucket.id,
acl: "private",
});
const exampleBucketObject = new aws.s3.BucketObject("exampleBucketObject", {
key: "someobject",
bucket: examplebucket.id,
source: new pulumi.asset.FileAsset("index.html"),
serverSideEncryption: "AES256",
});
resources:
examplebucket:
type: aws:s3:BucketV2
exampleBucketAclV2:
type: aws:s3:BucketAclV2
properties:
bucket: ${examplebucket.id}
acl: private
exampleBucketObject:
type: aws:s3:BucketObject
properties:
key: someobject
bucket: ${examplebucket.id}
source:
fn::FileAsset: index.html
serverSideEncryption: AES256
S3 Object Lock
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var examplebucket = new Aws.S3.BucketV2("examplebucket", new()
{
ObjectLockEnabled = true,
});
var exampleBucketAclV2 = new Aws.S3.BucketAclV2("exampleBucketAclV2", new()
{
Bucket = examplebucket.Id,
Acl = "private",
});
var exampleBucketVersioningV2 = new Aws.S3.BucketVersioningV2("exampleBucketVersioningV2", new()
{
Bucket = examplebucket.Id,
VersioningConfiguration = new Aws.S3.Inputs.BucketVersioningV2VersioningConfigurationArgs
{
Status = "Enabled",
},
});
var exampleBucketObject = new Aws.S3.BucketObject("exampleBucketObject", new()
{
Key = "someobject",
Bucket = examplebucket.Id,
Source = new FileAsset("important.txt"),
ObjectLockLegalHoldStatus = "ON",
ObjectLockMode = "GOVERNANCE",
ObjectLockRetainUntilDate = "2021-12-31T23:59:60Z",
ForceDestroy = true,
}, new CustomResourceOptions
{
DependsOn = new[]
{
exampleBucketVersioningV2,
},
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/s3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
examplebucket, err := s3.NewBucketV2(ctx, "examplebucket", &s3.BucketV2Args{
ObjectLockEnabled: pulumi.Bool(true),
})
if err != nil {
return err
}
_, err = s3.NewBucketAclV2(ctx, "exampleBucketAclV2", &s3.BucketAclV2Args{
Bucket: examplebucket.ID(),
Acl: pulumi.String("private"),
})
if err != nil {
return err
}
exampleBucketVersioningV2, err := s3.NewBucketVersioningV2(ctx, "exampleBucketVersioningV2", &s3.BucketVersioningV2Args{
Bucket: examplebucket.ID(),
VersioningConfiguration: &s3.BucketVersioningV2VersioningConfigurationArgs{
Status: pulumi.String("Enabled"),
},
})
if err != nil {
return err
}
_, err = s3.NewBucketObject(ctx, "exampleBucketObject", &s3.BucketObjectArgs{
Key: pulumi.String("someobject"),
Bucket: examplebucket.ID(),
Source: pulumi.NewFileAsset("important.txt"),
ObjectLockLegalHoldStatus: pulumi.String("ON"),
ObjectLockMode: pulumi.String("GOVERNANCE"),
ObjectLockRetainUntilDate: pulumi.String("2021-12-31T23:59:60Z"),
ForceDestroy: pulumi.Bool(true),
}, pulumi.DependsOn([]pulumi.Resource{
exampleBucketVersioningV2,
}))
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.s3.BucketV2;
import com.pulumi.aws.s3.BucketV2Args;
import com.pulumi.aws.s3.BucketAclV2;
import com.pulumi.aws.s3.BucketAclV2Args;
import com.pulumi.aws.s3.BucketVersioningV2;
import com.pulumi.aws.s3.BucketVersioningV2Args;
import com.pulumi.aws.s3.inputs.BucketVersioningV2VersioningConfigurationArgs;
import com.pulumi.aws.s3.BucketObject;
import com.pulumi.aws.s3.BucketObjectArgs;
import com.pulumi.resources.CustomResourceOptions;
import com.pulumi.asset.FileAsset;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var examplebucket = new BucketV2("examplebucket", BucketV2Args.builder()
.objectLockEnabled(true)
.build());
var exampleBucketAclV2 = new BucketAclV2("exampleBucketAclV2", BucketAclV2Args.builder()
.bucket(examplebucket.id())
.acl("private")
.build());
var exampleBucketVersioningV2 = new BucketVersioningV2("exampleBucketVersioningV2", BucketVersioningV2Args.builder()
.bucket(examplebucket.id())
.versioningConfiguration(BucketVersioningV2VersioningConfigurationArgs.builder()
.status("Enabled")
.build())
.build());
var exampleBucketObject = new BucketObject("exampleBucketObject", BucketObjectArgs.builder()
.key("someobject")
.bucket(examplebucket.id())
.source(new FileAsset("important.txt"))
.objectLockLegalHoldStatus("ON")
.objectLockMode("GOVERNANCE")
.objectLockRetainUntilDate("2021-12-31T23:59:60Z")
.forceDestroy(true)
.build(), CustomResourceOptions.builder()
.dependsOn(exampleBucketVersioningV2)
.build());
}
}
import pulumi
import pulumi_aws as aws
examplebucket = aws.s3.BucketV2("examplebucket", object_lock_enabled=True)
example_bucket_acl_v2 = aws.s3.BucketAclV2("exampleBucketAclV2",
bucket=examplebucket.id,
acl="private")
example_bucket_versioning_v2 = aws.s3.BucketVersioningV2("exampleBucketVersioningV2",
bucket=examplebucket.id,
versioning_configuration=aws.s3.BucketVersioningV2VersioningConfigurationArgs(
status="Enabled",
))
example_bucket_object = aws.s3.BucketObject("exampleBucketObject",
key="someobject",
bucket=examplebucket.id,
source=pulumi.FileAsset("important.txt"),
object_lock_legal_hold_status="ON",
object_lock_mode="GOVERNANCE",
object_lock_retain_until_date="2021-12-31T23:59:60Z",
force_destroy=True,
opts=pulumi.ResourceOptions(depends_on=[example_bucket_versioning_v2]))
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const examplebucket = new aws.s3.BucketV2("examplebucket", {objectLockEnabled: true});
const exampleBucketAclV2 = new aws.s3.BucketAclV2("exampleBucketAclV2", {
bucket: examplebucket.id,
acl: "private",
});
const exampleBucketVersioningV2 = new aws.s3.BucketVersioningV2("exampleBucketVersioningV2", {
bucket: examplebucket.id,
versioningConfiguration: {
status: "Enabled",
},
});
const exampleBucketObject = new aws.s3.BucketObject("exampleBucketObject", {
key: "someobject",
bucket: examplebucket.id,
source: new pulumi.asset.FileAsset("important.txt"),
objectLockLegalHoldStatus: "ON",
objectLockMode: "GOVERNANCE",
objectLockRetainUntilDate: "2021-12-31T23:59:60Z",
forceDestroy: true,
}, {
dependsOn: [exampleBucketVersioningV2],
});
resources:
examplebucket:
type: aws:s3:BucketV2
properties:
objectLockEnabled: true
exampleBucketAclV2:
type: aws:s3:BucketAclV2
properties:
bucket: ${examplebucket.id}
acl: private
exampleBucketVersioningV2:
type: aws:s3:BucketVersioningV2
properties:
bucket: ${examplebucket.id}
versioningConfiguration:
status: Enabled
exampleBucketObject:
type: aws:s3:BucketObject
properties:
key: someobject
bucket: ${examplebucket.id}
source:
fn::FileAsset: important.txt
objectLockLegalHoldStatus: ON
objectLockMode: GOVERNANCE
objectLockRetainUntilDate: 2021-12-31T23:59:60Z
forceDestroy: true
options:
dependson:
- ${exampleBucketVersioningV2}
Create BucketObject Resource
new BucketObject(name: string, args: BucketObjectArgs, opts?: CustomResourceOptions);
@overload
def BucketObject(resource_name: str,
opts: Optional[ResourceOptions] = None,
acl: Optional[str] = None,
bucket: Optional[str] = None,
bucket_key_enabled: Optional[bool] = None,
cache_control: Optional[str] = None,
content: Optional[str] = None,
content_base64: Optional[str] = None,
content_disposition: Optional[str] = None,
content_encoding: Optional[str] = None,
content_language: Optional[str] = None,
content_type: Optional[str] = None,
etag: Optional[str] = None,
force_destroy: Optional[bool] = None,
key: Optional[str] = None,
kms_key_id: Optional[str] = None,
metadata: Optional[Mapping[str, str]] = None,
object_lock_legal_hold_status: Optional[str] = None,
object_lock_mode: Optional[str] = None,
object_lock_retain_until_date: Optional[str] = None,
server_side_encryption: Optional[str] = None,
source: Optional[Union[pulumi.Asset, pulumi.Archive]] = None,
source_hash: Optional[str] = None,
storage_class: Optional[str] = None,
tags: Optional[Mapping[str, str]] = None,
website_redirect: Optional[str] = None)
@overload
def BucketObject(resource_name: str,
args: BucketObjectArgs,
opts: Optional[ResourceOptions] = None)
func NewBucketObject(ctx *Context, name string, args BucketObjectArgs, opts ...ResourceOption) (*BucketObject, error)
public BucketObject(string name, BucketObjectArgs args, CustomResourceOptions? opts = null)
public BucketObject(String name, BucketObjectArgs args)
public BucketObject(String name, BucketObjectArgs args, CustomResourceOptions options)
type: aws:s3:BucketObject
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args BucketObjectArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args BucketObjectArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args BucketObjectArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args BucketObjectArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args BucketObjectArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
BucketObject Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
The BucketObject resource accepts the following input properties:
- Bucket string | string
Name of the bucket to put the file in. Alternatively, an S3 access point ARN can be specified.
- Acl string
Canned ACL to apply. Valid values are
private
,public-read
,public-read-write
,aws-exec-read
,authenticated-read
,bucket-owner-read
, andbucket-owner-full-control
. Defaults toprivate
.- Bucket
Key boolEnabled Whether or not to use Amazon S3 Bucket Keys for SSE-KMS.
- Cache
Control string Caching behavior along the request/reply chain Read w3c cache_control for further details.
- Content string
Literal string value to use as the object content, which will be uploaded as UTF-8-encoded text.
- Content
Base64 string Base64-encoded data that will be decoded and uploaded as raw bytes for the object content. This allows safely uploading non-UTF8 binary data, but is recommended only for small content such as the result of the
gzipbase64
function with small text strings. For larger objects, usesource
to stream the content from a disk file.- Content
Disposition string Presentational information for the object. Read w3c content_disposition for further information.
- Content
Encoding string Content encodings that have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field. Read w3c content encoding for further information.
- Content
Language string Language the content is in e.g., en-US or en-GB.
- Content
Type string Standard MIME type describing the format of the object data, e.g., application/octet-stream. All Valid MIME Types are valid for this input.
- Etag string
Triggers updates when the value changes. This attribute is not compatible with KMS encryption,
kms_key_id
orserver_side_encryption = "aws:kms"
(seesource_hash
instead).- Force
Destroy bool Whether to allow the object to be deleted by removing any legal hold on any object version. Default is
false
. This value should be set totrue
only if the bucket has S3 object lock enabled.- Key string
Name of the object once it is in the bucket.
The following arguments are optional:
- Kms
Key stringId ARN of the KMS Key to use for object encryption. If the S3 Bucket has server-side encryption enabled, that value will automatically be used. If referencing the
aws.kms.Key
resource, use thearn
attribute. If referencing theaws.kms.Alias
data source or resource, use thetarget_key_arn
attribute. The provider will only perform drift detection if a configuration value is provided.- Metadata Dictionary<string, string>
Map of keys/values to provision metadata (will be automatically prefixed by
x-amz-meta-
, note that only lowercase label are currently supported by the AWS Go API).- Object
Lock stringLegal Hold Status Legal hold status that you want to apply to the specified object. Valid values are
ON
andOFF
.- Object
Lock stringMode Object lock retention mode that you want to apply to this object. Valid values are
GOVERNANCE
andCOMPLIANCE
.- Object
Lock stringRetain Until Date Date and time, in RFC3339 format, when this object's object lock will expire.
- Server
Side stringEncryption Server-side encryption of the object in S3. Valid values are "
AES256
" and "aws:kms
".- Source
Asset
Or Archive Path to a file that will be read and uploaded as raw bytes for the object content.
- Source
Hash string Triggers updates like
etag
but useful to addressetag
encryption limitations.- Storage
Class string Storage Class for the object. Defaults to "
STANDARD
".- Dictionary<string, string>
Map of tags to assign to the object. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.- Website
Redirect string Target URL for website redirect.
If no content is provided through
source
,content
orcontent_base64
, then the object will be empty.
- Bucket string | string
Name of the bucket to put the file in. Alternatively, an S3 access point ARN can be specified.
- Acl string
Canned ACL to apply. Valid values are
private
,public-read
,public-read-write
,aws-exec-read
,authenticated-read
,bucket-owner-read
, andbucket-owner-full-control
. Defaults toprivate
.- Bucket
Key boolEnabled Whether or not to use Amazon S3 Bucket Keys for SSE-KMS.
- Cache
Control string Caching behavior along the request/reply chain Read w3c cache_control for further details.
- Content string
Literal string value to use as the object content, which will be uploaded as UTF-8-encoded text.
- Content
Base64 string Base64-encoded data that will be decoded and uploaded as raw bytes for the object content. This allows safely uploading non-UTF8 binary data, but is recommended only for small content such as the result of the
gzipbase64
function with small text strings. For larger objects, usesource
to stream the content from a disk file.- Content
Disposition string Presentational information for the object. Read w3c content_disposition for further information.
- Content
Encoding string Content encodings that have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field. Read w3c content encoding for further information.
- Content
Language string Language the content is in e.g., en-US or en-GB.
- Content
Type string Standard MIME type describing the format of the object data, e.g., application/octet-stream. All Valid MIME Types are valid for this input.
- Etag string
Triggers updates when the value changes. This attribute is not compatible with KMS encryption,
kms_key_id
orserver_side_encryption = "aws:kms"
(seesource_hash
instead).- Force
Destroy bool Whether to allow the object to be deleted by removing any legal hold on any object version. Default is
false
. This value should be set totrue
only if the bucket has S3 object lock enabled.- Key string
Name of the object once it is in the bucket.
The following arguments are optional:
- Kms
Key stringId ARN of the KMS Key to use for object encryption. If the S3 Bucket has server-side encryption enabled, that value will automatically be used. If referencing the
aws.kms.Key
resource, use thearn
attribute. If referencing theaws.kms.Alias
data source or resource, use thetarget_key_arn
attribute. The provider will only perform drift detection if a configuration value is provided.- Metadata map[string]string
Map of keys/values to provision metadata (will be automatically prefixed by
x-amz-meta-
, note that only lowercase label are currently supported by the AWS Go API).- Object
Lock stringLegal Hold Status Legal hold status that you want to apply to the specified object. Valid values are
ON
andOFF
.- Object
Lock stringMode Object lock retention mode that you want to apply to this object. Valid values are
GOVERNANCE
andCOMPLIANCE
.- Object
Lock stringRetain Until Date Date and time, in RFC3339 format, when this object's object lock will expire.
- Server
Side stringEncryption Server-side encryption of the object in S3. Valid values are "
AES256
" and "aws:kms
".- Source
pulumi.
Asset Or Archive Path to a file that will be read and uploaded as raw bytes for the object content.
- Source
Hash string Triggers updates like
etag
but useful to addressetag
encryption limitations.- Storage
Class string Storage Class for the object. Defaults to "
STANDARD
".- map[string]string
Map of tags to assign to the object. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.- Website
Redirect string Target URL for website redirect.
If no content is provided through
source
,content
orcontent_base64
, then the object will be empty.
- bucket String | String
Name of the bucket to put the file in. Alternatively, an S3 access point ARN can be specified.
- acl String
Canned ACL to apply. Valid values are
private
,public-read
,public-read-write
,aws-exec-read
,authenticated-read
,bucket-owner-read
, andbucket-owner-full-control
. Defaults toprivate
.- bucket
Key BooleanEnabled Whether or not to use Amazon S3 Bucket Keys for SSE-KMS.
- cache
Control String Caching behavior along the request/reply chain Read w3c cache_control for further details.
- content String
Literal string value to use as the object content, which will be uploaded as UTF-8-encoded text.
- content
Base64 String Base64-encoded data that will be decoded and uploaded as raw bytes for the object content. This allows safely uploading non-UTF8 binary data, but is recommended only for small content such as the result of the
gzipbase64
function with small text strings. For larger objects, usesource
to stream the content from a disk file.- content
Disposition String Presentational information for the object. Read w3c content_disposition for further information.
- content
Encoding String Content encodings that have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field. Read w3c content encoding for further information.
- content
Language String Language the content is in e.g., en-US or en-GB.
- content
Type String Standard MIME type describing the format of the object data, e.g., application/octet-stream. All Valid MIME Types are valid for this input.
- etag String
Triggers updates when the value changes. This attribute is not compatible with KMS encryption,
kms_key_id
orserver_side_encryption = "aws:kms"
(seesource_hash
instead).- force
Destroy Boolean Whether to allow the object to be deleted by removing any legal hold on any object version. Default is
false
. This value should be set totrue
only if the bucket has S3 object lock enabled.- key String
Name of the object once it is in the bucket.
The following arguments are optional:
- kms
Key StringId ARN of the KMS Key to use for object encryption. If the S3 Bucket has server-side encryption enabled, that value will automatically be used. If referencing the
aws.kms.Key
resource, use thearn
attribute. If referencing theaws.kms.Alias
data source or resource, use thetarget_key_arn
attribute. The provider will only perform drift detection if a configuration value is provided.- metadata Map<String,String>
Map of keys/values to provision metadata (will be automatically prefixed by
x-amz-meta-
, note that only lowercase label are currently supported by the AWS Go API).- object
Lock StringLegal Hold Status Legal hold status that you want to apply to the specified object. Valid values are
ON
andOFF
.- object
Lock StringMode Object lock retention mode that you want to apply to this object. Valid values are
GOVERNANCE
andCOMPLIANCE
.- object
Lock StringRetain Until Date Date and time, in RFC3339 format, when this object's object lock will expire.
- server
Side StringEncryption Server-side encryption of the object in S3. Valid values are "
AES256
" and "aws:kms
".- source
Asset
Or Archive Path to a file that will be read and uploaded as raw bytes for the object content.
- source
Hash String Triggers updates like
etag
but useful to addressetag
encryption limitations.- storage
Class String Storage Class for the object. Defaults to "
STANDARD
".- Map<String,String>
Map of tags to assign to the object. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.- website
Redirect String Target URL for website redirect.
If no content is provided through
source
,content
orcontent_base64
, then the object will be empty.
- bucket string | Bucket
Name of the bucket to put the file in. Alternatively, an S3 access point ARN can be specified.
- acl string
Canned ACL to apply. Valid values are
private
,public-read
,public-read-write
,aws-exec-read
,authenticated-read
,bucket-owner-read
, andbucket-owner-full-control
. Defaults toprivate
.- bucket
Key booleanEnabled Whether or not to use Amazon S3 Bucket Keys for SSE-KMS.
- cache
Control string Caching behavior along the request/reply chain Read w3c cache_control for further details.
- content string
Literal string value to use as the object content, which will be uploaded as UTF-8-encoded text.
- content
Base64 string Base64-encoded data that will be decoded and uploaded as raw bytes for the object content. This allows safely uploading non-UTF8 binary data, but is recommended only for small content such as the result of the
gzipbase64
function with small text strings. For larger objects, usesource
to stream the content from a disk file.- content
Disposition string Presentational information for the object. Read w3c content_disposition for further information.
- content
Encoding string Content encodings that have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field. Read w3c content encoding for further information.
- content
Language string Language the content is in e.g., en-US or en-GB.
- content
Type string Standard MIME type describing the format of the object data, e.g., application/octet-stream. All Valid MIME Types are valid for this input.
- etag string
Triggers updates when the value changes. This attribute is not compatible with KMS encryption,
kms_key_id
orserver_side_encryption = "aws:kms"
(seesource_hash
instead).- force
Destroy boolean Whether to allow the object to be deleted by removing any legal hold on any object version. Default is
false
. This value should be set totrue
only if the bucket has S3 object lock enabled.- key string
Name of the object once it is in the bucket.
The following arguments are optional:
- kms
Key stringId ARN of the KMS Key to use for object encryption. If the S3 Bucket has server-side encryption enabled, that value will automatically be used. If referencing the
aws.kms.Key
resource, use thearn
attribute. If referencing theaws.kms.Alias
data source or resource, use thetarget_key_arn
attribute. The provider will only perform drift detection if a configuration value is provided.- metadata {[key: string]: string}
Map of keys/values to provision metadata (will be automatically prefixed by
x-amz-meta-
, note that only lowercase label are currently supported by the AWS Go API).- object
Lock stringLegal Hold Status Legal hold status that you want to apply to the specified object. Valid values are
ON
andOFF
.- object
Lock stringMode Object lock retention mode that you want to apply to this object. Valid values are
GOVERNANCE
andCOMPLIANCE
.- object
Lock stringRetain Until Date Date and time, in RFC3339 format, when this object's object lock will expire.
- server
Side stringEncryption Server-side encryption of the object in S3. Valid values are "
AES256
" and "aws:kms
".- source
pulumi.asset.
Asset | pulumi.asset. Archive Path to a file that will be read and uploaded as raw bytes for the object content.
- source
Hash string Triggers updates like
etag
but useful to addressetag
encryption limitations.- storage
Class string Storage Class for the object. Defaults to "
STANDARD
".- {[key: string]: string}
Map of tags to assign to the object. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.- website
Redirect string Target URL for website redirect.
If no content is provided through
source
,content
orcontent_base64
, then the object will be empty.
- bucket str | str
Name of the bucket to put the file in. Alternatively, an S3 access point ARN can be specified.
- acl str
Canned ACL to apply. Valid values are
private
,public-read
,public-read-write
,aws-exec-read
,authenticated-read
,bucket-owner-read
, andbucket-owner-full-control
. Defaults toprivate
.- bucket_
key_ boolenabled Whether or not to use Amazon S3 Bucket Keys for SSE-KMS.
- cache_
control str Caching behavior along the request/reply chain Read w3c cache_control for further details.
- content str
Literal string value to use as the object content, which will be uploaded as UTF-8-encoded text.
- content_
base64 str Base64-encoded data that will be decoded and uploaded as raw bytes for the object content. This allows safely uploading non-UTF8 binary data, but is recommended only for small content such as the result of the
gzipbase64
function with small text strings. For larger objects, usesource
to stream the content from a disk file.- content_
disposition str Presentational information for the object. Read w3c content_disposition for further information.
- content_
encoding str Content encodings that have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field. Read w3c content encoding for further information.
- content_
language str Language the content is in e.g., en-US or en-GB.
- content_
type str Standard MIME type describing the format of the object data, e.g., application/octet-stream. All Valid MIME Types are valid for this input.
- etag str
Triggers updates when the value changes. This attribute is not compatible with KMS encryption,
kms_key_id
orserver_side_encryption = "aws:kms"
(seesource_hash
instead).- force_
destroy bool Whether to allow the object to be deleted by removing any legal hold on any object version. Default is
false
. This value should be set totrue
only if the bucket has S3 object lock enabled.- key str
Name of the object once it is in the bucket.
The following arguments are optional:
- kms_
key_ strid ARN of the KMS Key to use for object encryption. If the S3 Bucket has server-side encryption enabled, that value will automatically be used. If referencing the
aws.kms.Key
resource, use thearn
attribute. If referencing theaws.kms.Alias
data source or resource, use thetarget_key_arn
attribute. The provider will only perform drift detection if a configuration value is provided.- metadata Mapping[str, str]
Map of keys/values to provision metadata (will be automatically prefixed by
x-amz-meta-
, note that only lowercase label are currently supported by the AWS Go API).- object_
lock_ strlegal_ hold_ status Legal hold status that you want to apply to the specified object. Valid values are
ON
andOFF
.- object_
lock_ strmode Object lock retention mode that you want to apply to this object. Valid values are
GOVERNANCE
andCOMPLIANCE
.- object_
lock_ strretain_ until_ date Date and time, in RFC3339 format, when this object's object lock will expire.
- server_
side_ strencryption Server-side encryption of the object in S3. Valid values are "
AES256
" and "aws:kms
".- source
Union[pulumi.
Asset, pulumi. Archive] Path to a file that will be read and uploaded as raw bytes for the object content.
- source_
hash str Triggers updates like
etag
but useful to addressetag
encryption limitations.- storage_
class str Storage Class for the object. Defaults to "
STANDARD
".- Mapping[str, str]
Map of tags to assign to the object. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.- website_
redirect str Target URL for website redirect.
If no content is provided through
source
,content
orcontent_base64
, then the object will be empty.
- bucket String |
Name of the bucket to put the file in. Alternatively, an S3 access point ARN can be specified.
- acl String
Canned ACL to apply. Valid values are
private
,public-read
,public-read-write
,aws-exec-read
,authenticated-read
,bucket-owner-read
, andbucket-owner-full-control
. Defaults toprivate
.- bucket
Key BooleanEnabled Whether or not to use Amazon S3 Bucket Keys for SSE-KMS.
- cache
Control String Caching behavior along the request/reply chain Read w3c cache_control for further details.
- content String
Literal string value to use as the object content, which will be uploaded as UTF-8-encoded text.
- content
Base64 String Base64-encoded data that will be decoded and uploaded as raw bytes for the object content. This allows safely uploading non-UTF8 binary data, but is recommended only for small content such as the result of the
gzipbase64
function with small text strings. For larger objects, usesource
to stream the content from a disk file.- content
Disposition String Presentational information for the object. Read w3c content_disposition for further information.
- content
Encoding String Content encodings that have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field. Read w3c content encoding for further information.
- content
Language String Language the content is in e.g., en-US or en-GB.
- content
Type String Standard MIME type describing the format of the object data, e.g., application/octet-stream. All Valid MIME Types are valid for this input.
- etag String
Triggers updates when the value changes. This attribute is not compatible with KMS encryption,
kms_key_id
orserver_side_encryption = "aws:kms"
(seesource_hash
instead).- force
Destroy Boolean Whether to allow the object to be deleted by removing any legal hold on any object version. Default is
false
. This value should be set totrue
only if the bucket has S3 object lock enabled.- key String
Name of the object once it is in the bucket.
The following arguments are optional:
- kms
Key StringId ARN of the KMS Key to use for object encryption. If the S3 Bucket has server-side encryption enabled, that value will automatically be used. If referencing the
aws.kms.Key
resource, use thearn
attribute. If referencing theaws.kms.Alias
data source or resource, use thetarget_key_arn
attribute. The provider will only perform drift detection if a configuration value is provided.- metadata Map<String>
Map of keys/values to provision metadata (will be automatically prefixed by
x-amz-meta-
, note that only lowercase label are currently supported by the AWS Go API).- object
Lock StringLegal Hold Status Legal hold status that you want to apply to the specified object. Valid values are
ON
andOFF
.- object
Lock StringMode Object lock retention mode that you want to apply to this object. Valid values are
GOVERNANCE
andCOMPLIANCE
.- object
Lock StringRetain Until Date Date and time, in RFC3339 format, when this object's object lock will expire.
- server
Side StringEncryption Server-side encryption of the object in S3. Valid values are "
AES256
" and "aws:kms
".- source Asset
Path to a file that will be read and uploaded as raw bytes for the object content.
- source
Hash String Triggers updates like
etag
but useful to addressetag
encryption limitations.- storage
Class String Storage Class for the object. Defaults to "
STANDARD
".- Map<String>
Map of tags to assign to the object. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.- website
Redirect String Target URL for website redirect.
If no content is provided through
source
,content
orcontent_base64
, then the object will be empty.
Outputs
All input properties are implicitly available as output properties. Additionally, the BucketObject resource produces the following output properties:
- Id string
The provider-assigned unique ID for this managed resource.
- Dictionary<string, string>
Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.Please use
tags
instead.- Version
Id string Unique version ID value for the object, if bucket versioning is enabled.
- Id string
The provider-assigned unique ID for this managed resource.
- map[string]string
Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.Please use
tags
instead.- Version
Id string Unique version ID value for the object, if bucket versioning is enabled.
- id String
The provider-assigned unique ID for this managed resource.
- Map<String,String>
Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.Please use
tags
instead.- version
Id String Unique version ID value for the object, if bucket versioning is enabled.
- id string
The provider-assigned unique ID for this managed resource.
- {[key: string]: string}
Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.Please use
tags
instead.- version
Id string Unique version ID value for the object, if bucket versioning is enabled.
- id str
The provider-assigned unique ID for this managed resource.
- Mapping[str, str]
Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.Please use
tags
instead.- version_
id str Unique version ID value for the object, if bucket versioning is enabled.
- id String
The provider-assigned unique ID for this managed resource.
- Map<String>
Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.Please use
tags
instead.- version
Id String Unique version ID value for the object, if bucket versioning is enabled.
Look up Existing BucketObject Resource
Get an existing BucketObject resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: BucketObjectState, opts?: CustomResourceOptions): BucketObject
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
acl: Optional[str] = None,
bucket: Optional[str] = None,
bucket_key_enabled: Optional[bool] = None,
cache_control: Optional[str] = None,
content: Optional[str] = None,
content_base64: Optional[str] = None,
content_disposition: Optional[str] = None,
content_encoding: Optional[str] = None,
content_language: Optional[str] = None,
content_type: Optional[str] = None,
etag: Optional[str] = None,
force_destroy: Optional[bool] = None,
key: Optional[str] = None,
kms_key_id: Optional[str] = None,
metadata: Optional[Mapping[str, str]] = None,
object_lock_legal_hold_status: Optional[str] = None,
object_lock_mode: Optional[str] = None,
object_lock_retain_until_date: Optional[str] = None,
server_side_encryption: Optional[str] = None,
source: Optional[Union[pulumi.Asset, pulumi.Archive]] = None,
source_hash: Optional[str] = None,
storage_class: Optional[str] = None,
tags: Optional[Mapping[str, str]] = None,
tags_all: Optional[Mapping[str, str]] = None,
version_id: Optional[str] = None,
website_redirect: Optional[str] = None) -> BucketObject
func GetBucketObject(ctx *Context, name string, id IDInput, state *BucketObjectState, opts ...ResourceOption) (*BucketObject, error)
public static BucketObject Get(string name, Input<string> id, BucketObjectState? state, CustomResourceOptions? opts = null)
public static BucketObject get(String name, Output<String> id, BucketObjectState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Acl string
Canned ACL to apply. Valid values are
private
,public-read
,public-read-write
,aws-exec-read
,authenticated-read
,bucket-owner-read
, andbucket-owner-full-control
. Defaults toprivate
.- Bucket string | string
Name of the bucket to put the file in. Alternatively, an S3 access point ARN can be specified.
- Bucket
Key boolEnabled Whether or not to use Amazon S3 Bucket Keys for SSE-KMS.
- Cache
Control string Caching behavior along the request/reply chain Read w3c cache_control for further details.
- Content string
Literal string value to use as the object content, which will be uploaded as UTF-8-encoded text.
- Content
Base64 string Base64-encoded data that will be decoded and uploaded as raw bytes for the object content. This allows safely uploading non-UTF8 binary data, but is recommended only for small content such as the result of the
gzipbase64
function with small text strings. For larger objects, usesource
to stream the content from a disk file.- Content
Disposition string Presentational information for the object. Read w3c content_disposition for further information.
- Content
Encoding string Content encodings that have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field. Read w3c content encoding for further information.
- Content
Language string Language the content is in e.g., en-US or en-GB.
- Content
Type string Standard MIME type describing the format of the object data, e.g., application/octet-stream. All Valid MIME Types are valid for this input.
- Etag string
Triggers updates when the value changes. This attribute is not compatible with KMS encryption,
kms_key_id
orserver_side_encryption = "aws:kms"
(seesource_hash
instead).- Force
Destroy bool Whether to allow the object to be deleted by removing any legal hold on any object version. Default is
false
. This value should be set totrue
only if the bucket has S3 object lock enabled.- Key string
Name of the object once it is in the bucket.
The following arguments are optional:
- Kms
Key stringId ARN of the KMS Key to use for object encryption. If the S3 Bucket has server-side encryption enabled, that value will automatically be used. If referencing the
aws.kms.Key
resource, use thearn
attribute. If referencing theaws.kms.Alias
data source or resource, use thetarget_key_arn
attribute. The provider will only perform drift detection if a configuration value is provided.- Metadata Dictionary<string, string>
Map of keys/values to provision metadata (will be automatically prefixed by
x-amz-meta-
, note that only lowercase label are currently supported by the AWS Go API).- Object
Lock stringLegal Hold Status Legal hold status that you want to apply to the specified object. Valid values are
ON
andOFF
.- Object
Lock stringMode Object lock retention mode that you want to apply to this object. Valid values are
GOVERNANCE
andCOMPLIANCE
.- Object
Lock stringRetain Until Date Date and time, in RFC3339 format, when this object's object lock will expire.
- Server
Side stringEncryption Server-side encryption of the object in S3. Valid values are "
AES256
" and "aws:kms
".- Source
Asset
Or Archive Path to a file that will be read and uploaded as raw bytes for the object content.
- Source
Hash string Triggers updates like
etag
but useful to addressetag
encryption limitations.- Storage
Class string Storage Class for the object. Defaults to "
STANDARD
".- Dictionary<string, string>
Map of tags to assign to the object. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.- Dictionary<string, string>
Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.Please use
tags
instead.- Version
Id string Unique version ID value for the object, if bucket versioning is enabled.
- Website
Redirect string Target URL for website redirect.
If no content is provided through
source
,content
orcontent_base64
, then the object will be empty.
- Acl string
Canned ACL to apply. Valid values are
private
,public-read
,public-read-write
,aws-exec-read
,authenticated-read
,bucket-owner-read
, andbucket-owner-full-control
. Defaults toprivate
.- Bucket string | string
Name of the bucket to put the file in. Alternatively, an S3 access point ARN can be specified.
- Bucket
Key boolEnabled Whether or not to use Amazon S3 Bucket Keys for SSE-KMS.
- Cache
Control string Caching behavior along the request/reply chain Read w3c cache_control for further details.
- Content string
Literal string value to use as the object content, which will be uploaded as UTF-8-encoded text.
- Content
Base64 string Base64-encoded data that will be decoded and uploaded as raw bytes for the object content. This allows safely uploading non-UTF8 binary data, but is recommended only for small content such as the result of the
gzipbase64
function with small text strings. For larger objects, usesource
to stream the content from a disk file.- Content
Disposition string Presentational information for the object. Read w3c content_disposition for further information.
- Content
Encoding string Content encodings that have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field. Read w3c content encoding for further information.
- Content
Language string Language the content is in e.g., en-US or en-GB.
- Content
Type string Standard MIME type describing the format of the object data, e.g., application/octet-stream. All Valid MIME Types are valid for this input.
- Etag string
Triggers updates when the value changes. This attribute is not compatible with KMS encryption,
kms_key_id
orserver_side_encryption = "aws:kms"
(seesource_hash
instead).- Force
Destroy bool Whether to allow the object to be deleted by removing any legal hold on any object version. Default is
false
. This value should be set totrue
only if the bucket has S3 object lock enabled.- Key string
Name of the object once it is in the bucket.
The following arguments are optional:
- Kms
Key stringId ARN of the KMS Key to use for object encryption. If the S3 Bucket has server-side encryption enabled, that value will automatically be used. If referencing the
aws.kms.Key
resource, use thearn
attribute. If referencing theaws.kms.Alias
data source or resource, use thetarget_key_arn
attribute. The provider will only perform drift detection if a configuration value is provided.- Metadata map[string]string
Map of keys/values to provision metadata (will be automatically prefixed by
x-amz-meta-
, note that only lowercase label are currently supported by the AWS Go API).- Object
Lock stringLegal Hold Status Legal hold status that you want to apply to the specified object. Valid values are
ON
andOFF
.- Object
Lock stringMode Object lock retention mode that you want to apply to this object. Valid values are
GOVERNANCE
andCOMPLIANCE
.- Object
Lock stringRetain Until Date Date and time, in RFC3339 format, when this object's object lock will expire.
- Server
Side stringEncryption Server-side encryption of the object in S3. Valid values are "
AES256
" and "aws:kms
".- Source
pulumi.
Asset Or Archive Path to a file that will be read and uploaded as raw bytes for the object content.
- Source
Hash string Triggers updates like
etag
but useful to addressetag
encryption limitations.- Storage
Class string Storage Class for the object. Defaults to "
STANDARD
".- map[string]string
Map of tags to assign to the object. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.- map[string]string
Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.Please use
tags
instead.- Version
Id string Unique version ID value for the object, if bucket versioning is enabled.
- Website
Redirect string Target URL for website redirect.
If no content is provided through
source
,content
orcontent_base64
, then the object will be empty.
- acl String
Canned ACL to apply. Valid values are
private
,public-read
,public-read-write
,aws-exec-read
,authenticated-read
,bucket-owner-read
, andbucket-owner-full-control
. Defaults toprivate
.- bucket String | String
Name of the bucket to put the file in. Alternatively, an S3 access point ARN can be specified.
- bucket
Key BooleanEnabled Whether or not to use Amazon S3 Bucket Keys for SSE-KMS.
- cache
Control String Caching behavior along the request/reply chain Read w3c cache_control for further details.
- content String
Literal string value to use as the object content, which will be uploaded as UTF-8-encoded text.
- content
Base64 String Base64-encoded data that will be decoded and uploaded as raw bytes for the object content. This allows safely uploading non-UTF8 binary data, but is recommended only for small content such as the result of the
gzipbase64
function with small text strings. For larger objects, usesource
to stream the content from a disk file.- content
Disposition String Presentational information for the object. Read w3c content_disposition for further information.
- content
Encoding String Content encodings that have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field. Read w3c content encoding for further information.
- content
Language String Language the content is in e.g., en-US or en-GB.
- content
Type String Standard MIME type describing the format of the object data, e.g., application/octet-stream. All Valid MIME Types are valid for this input.
- etag String
Triggers updates when the value changes. This attribute is not compatible with KMS encryption,
kms_key_id
orserver_side_encryption = "aws:kms"
(seesource_hash
instead).- force
Destroy Boolean Whether to allow the object to be deleted by removing any legal hold on any object version. Default is
false
. This value should be set totrue
only if the bucket has S3 object lock enabled.- key String
Name of the object once it is in the bucket.
The following arguments are optional:
- kms
Key StringId ARN of the KMS Key to use for object encryption. If the S3 Bucket has server-side encryption enabled, that value will automatically be used. If referencing the
aws.kms.Key
resource, use thearn
attribute. If referencing theaws.kms.Alias
data source or resource, use thetarget_key_arn
attribute. The provider will only perform drift detection if a configuration value is provided.- metadata Map<String,String>
Map of keys/values to provision metadata (will be automatically prefixed by
x-amz-meta-
, note that only lowercase label are currently supported by the AWS Go API).- object
Lock StringLegal Hold Status Legal hold status that you want to apply to the specified object. Valid values are
ON
andOFF
.- object
Lock StringMode Object lock retention mode that you want to apply to this object. Valid values are
GOVERNANCE
andCOMPLIANCE
.- object
Lock StringRetain Until Date Date and time, in RFC3339 format, when this object's object lock will expire.
- server
Side StringEncryption Server-side encryption of the object in S3. Valid values are "
AES256
" and "aws:kms
".- source
Asset
Or Archive Path to a file that will be read and uploaded as raw bytes for the object content.
- source
Hash String Triggers updates like
etag
but useful to addressetag
encryption limitations.- storage
Class String Storage Class for the object. Defaults to "
STANDARD
".- Map<String,String>
Map of tags to assign to the object. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.- Map<String,String>
Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.Please use
tags
instead.- version
Id String Unique version ID value for the object, if bucket versioning is enabled.
- website
Redirect String Target URL for website redirect.
If no content is provided through
source
,content
orcontent_base64
, then the object will be empty.
- acl string
Canned ACL to apply. Valid values are
private
,public-read
,public-read-write
,aws-exec-read
,authenticated-read
,bucket-owner-read
, andbucket-owner-full-control
. Defaults toprivate
.- bucket string | Bucket
Name of the bucket to put the file in. Alternatively, an S3 access point ARN can be specified.
- bucket
Key booleanEnabled Whether or not to use Amazon S3 Bucket Keys for SSE-KMS.
- cache
Control string Caching behavior along the request/reply chain Read w3c cache_control for further details.
- content string
Literal string value to use as the object content, which will be uploaded as UTF-8-encoded text.
- content
Base64 string Base64-encoded data that will be decoded and uploaded as raw bytes for the object content. This allows safely uploading non-UTF8 binary data, but is recommended only for small content such as the result of the
gzipbase64
function with small text strings. For larger objects, usesource
to stream the content from a disk file.- content
Disposition string Presentational information for the object. Read w3c content_disposition for further information.
- content
Encoding string Content encodings that have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field. Read w3c content encoding for further information.
- content
Language string Language the content is in e.g., en-US or en-GB.
- content
Type string Standard MIME type describing the format of the object data, e.g., application/octet-stream. All Valid MIME Types are valid for this input.
- etag string
Triggers updates when the value changes. This attribute is not compatible with KMS encryption,
kms_key_id
orserver_side_encryption = "aws:kms"
(seesource_hash
instead).- force
Destroy boolean Whether to allow the object to be deleted by removing any legal hold on any object version. Default is
false
. This value should be set totrue
only if the bucket has S3 object lock enabled.- key string
Name of the object once it is in the bucket.
The following arguments are optional:
- kms
Key stringId ARN of the KMS Key to use for object encryption. If the S3 Bucket has server-side encryption enabled, that value will automatically be used. If referencing the
aws.kms.Key
resource, use thearn
attribute. If referencing theaws.kms.Alias
data source or resource, use thetarget_key_arn
attribute. The provider will only perform drift detection if a configuration value is provided.- metadata {[key: string]: string}
Map of keys/values to provision metadata (will be automatically prefixed by
x-amz-meta-
, note that only lowercase label are currently supported by the AWS Go API).- object
Lock stringLegal Hold Status Legal hold status that you want to apply to the specified object. Valid values are
ON
andOFF
.- object
Lock stringMode Object lock retention mode that you want to apply to this object. Valid values are
GOVERNANCE
andCOMPLIANCE
.- object
Lock stringRetain Until Date Date and time, in RFC3339 format, when this object's object lock will expire.
- server
Side stringEncryption Server-side encryption of the object in S3. Valid values are "
AES256
" and "aws:kms
".- source
pulumi.asset.
Asset | pulumi.asset. Archive Path to a file that will be read and uploaded as raw bytes for the object content.
- source
Hash string Triggers updates like
etag
but useful to addressetag
encryption limitations.- storage
Class string Storage Class for the object. Defaults to "
STANDARD
".- {[key: string]: string}
Map of tags to assign to the object. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.- {[key: string]: string}
Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.Please use
tags
instead.- version
Id string Unique version ID value for the object, if bucket versioning is enabled.
- website
Redirect string Target URL for website redirect.
If no content is provided through
source
,content
orcontent_base64
, then the object will be empty.
- acl str
Canned ACL to apply. Valid values are
private
,public-read
,public-read-write
,aws-exec-read
,authenticated-read
,bucket-owner-read
, andbucket-owner-full-control
. Defaults toprivate
.- bucket str | str
Name of the bucket to put the file in. Alternatively, an S3 access point ARN can be specified.
- bucket_
key_ boolenabled Whether or not to use Amazon S3 Bucket Keys for SSE-KMS.
- cache_
control str Caching behavior along the request/reply chain Read w3c cache_control for further details.
- content str
Literal string value to use as the object content, which will be uploaded as UTF-8-encoded text.
- content_
base64 str Base64-encoded data that will be decoded and uploaded as raw bytes for the object content. This allows safely uploading non-UTF8 binary data, but is recommended only for small content such as the result of the
gzipbase64
function with small text strings. For larger objects, usesource
to stream the content from a disk file.- content_
disposition str Presentational information for the object. Read w3c content_disposition for further information.
- content_
encoding str Content encodings that have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field. Read w3c content encoding for further information.
- content_
language str Language the content is in e.g., en-US or en-GB.
- content_
type str Standard MIME type describing the format of the object data, e.g., application/octet-stream. All Valid MIME Types are valid for this input.
- etag str
Triggers updates when the value changes. This attribute is not compatible with KMS encryption,
kms_key_id
orserver_side_encryption = "aws:kms"
(seesource_hash
instead).- force_
destroy bool Whether to allow the object to be deleted by removing any legal hold on any object version. Default is
false
. This value should be set totrue
only if the bucket has S3 object lock enabled.- key str
Name of the object once it is in the bucket.
The following arguments are optional:
- kms_
key_ strid ARN of the KMS Key to use for object encryption. If the S3 Bucket has server-side encryption enabled, that value will automatically be used. If referencing the
aws.kms.Key
resource, use thearn
attribute. If referencing theaws.kms.Alias
data source or resource, use thetarget_key_arn
attribute. The provider will only perform drift detection if a configuration value is provided.- metadata Mapping[str, str]
Map of keys/values to provision metadata (will be automatically prefixed by
x-amz-meta-
, note that only lowercase label are currently supported by the AWS Go API).- object_
lock_ strlegal_ hold_ status Legal hold status that you want to apply to the specified object. Valid values are
ON
andOFF
.- object_
lock_ strmode Object lock retention mode that you want to apply to this object. Valid values are
GOVERNANCE
andCOMPLIANCE
.- object_
lock_ strretain_ until_ date Date and time, in RFC3339 format, when this object's object lock will expire.
- server_
side_ strencryption Server-side encryption of the object in S3. Valid values are "
AES256
" and "aws:kms
".- source
Union[pulumi.
Asset, pulumi. Archive] Path to a file that will be read and uploaded as raw bytes for the object content.
- source_
hash str Triggers updates like
etag
but useful to addressetag
encryption limitations.- storage_
class str Storage Class for the object. Defaults to "
STANDARD
".- Mapping[str, str]
Map of tags to assign to the object. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.- Mapping[str, str]
Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.Please use
tags
instead.- version_
id str Unique version ID value for the object, if bucket versioning is enabled.
- website_
redirect str Target URL for website redirect.
If no content is provided through
source
,content
orcontent_base64
, then the object will be empty.
- acl String
Canned ACL to apply. Valid values are
private
,public-read
,public-read-write
,aws-exec-read
,authenticated-read
,bucket-owner-read
, andbucket-owner-full-control
. Defaults toprivate
.- bucket String |
Name of the bucket to put the file in. Alternatively, an S3 access point ARN can be specified.
- bucket
Key BooleanEnabled Whether or not to use Amazon S3 Bucket Keys for SSE-KMS.
- cache
Control String Caching behavior along the request/reply chain Read w3c cache_control for further details.
- content String
Literal string value to use as the object content, which will be uploaded as UTF-8-encoded text.
- content
Base64 String Base64-encoded data that will be decoded and uploaded as raw bytes for the object content. This allows safely uploading non-UTF8 binary data, but is recommended only for small content such as the result of the
gzipbase64
function with small text strings. For larger objects, usesource
to stream the content from a disk file.- content
Disposition String Presentational information for the object. Read w3c content_disposition for further information.
- content
Encoding String Content encodings that have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field. Read w3c content encoding for further information.
- content
Language String Language the content is in e.g., en-US or en-GB.
- content
Type String Standard MIME type describing the format of the object data, e.g., application/octet-stream. All Valid MIME Types are valid for this input.
- etag String
Triggers updates when the value changes. This attribute is not compatible with KMS encryption,
kms_key_id
orserver_side_encryption = "aws:kms"
(seesource_hash
instead).- force
Destroy Boolean Whether to allow the object to be deleted by removing any legal hold on any object version. Default is
false
. This value should be set totrue
only if the bucket has S3 object lock enabled.- key String
Name of the object once it is in the bucket.
The following arguments are optional:
- kms
Key StringId ARN of the KMS Key to use for object encryption. If the S3 Bucket has server-side encryption enabled, that value will automatically be used. If referencing the
aws.kms.Key
resource, use thearn
attribute. If referencing theaws.kms.Alias
data source or resource, use thetarget_key_arn
attribute. The provider will only perform drift detection if a configuration value is provided.- metadata Map<String>
Map of keys/values to provision metadata (will be automatically prefixed by
x-amz-meta-
, note that only lowercase label are currently supported by the AWS Go API).- object
Lock StringLegal Hold Status Legal hold status that you want to apply to the specified object. Valid values are
ON
andOFF
.- object
Lock StringMode Object lock retention mode that you want to apply to this object. Valid values are
GOVERNANCE
andCOMPLIANCE
.- object
Lock StringRetain Until Date Date and time, in RFC3339 format, when this object's object lock will expire.
- server
Side StringEncryption Server-side encryption of the object in S3. Valid values are "
AES256
" and "aws:kms
".- source Asset
Path to a file that will be read and uploaded as raw bytes for the object content.
- source
Hash String Triggers updates like
etag
but useful to addressetag
encryption limitations.- storage
Class String Storage Class for the object. Defaults to "
STANDARD
".- Map<String>
Map of tags to assign to the object. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.- Map<String>
Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.Please use
tags
instead.- version
Id String Unique version ID value for the object, if bucket versioning is enabled.
- website
Redirect String Target URL for website redirect.
If no content is provided through
source
,content
orcontent_base64
, then the object will be empty.
Import
Import using the id
, which is the bucket name and the key together:
Import using S3 URL syntax:
Using pulumi import
to import objects using the id
or S3 URL. For example:
Import using the id
, which is the bucket name and the key together:
$ pulumi import aws:s3/bucketObject:BucketObject example some-bucket-name/some/key.txt
Import using S3 URL syntax:
$ pulumi import aws:s3/bucketObject:BucketObject example s3://some-bucket-name/some/key.txt
Package Details
- Repository
- AWS Classic pulumi/pulumi-aws
- License
- Apache-2.0
- Notes
This Pulumi package is based on the
aws
Terraform Provider.
Try AWS Native preview for resources not in the classic version.