Package com.pulumi.aws.s3
Class BucketAclV2
- java.lang.Object
-
- com.pulumi.resources.Resource
-
- com.pulumi.resources.CustomResource
-
- com.pulumi.aws.s3.BucketAclV2
-
public class BucketAclV2 extends com.pulumi.resources.CustomResource
Provides an S3 bucket ACL resource. > **Note:** destroy does not delete the S3 Bucket ACL but does remove the resource from state. > This resource cannot be used with S3 directory buckets. ## Example Usage ### With `private` ACL <!--Start PulumiCodeChooser -->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.BucketOwnershipControls; import com.pulumi.aws.s3.BucketOwnershipControlsArgs; import com.pulumi.aws.s3.inputs.BucketOwnershipControlsRuleArgs; import com.pulumi.aws.s3.BucketAclV2; import com.pulumi.aws.s3.BucketAclV2Args; import com.pulumi.resources.CustomResourceOptions; 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 example = new BucketV2("example", BucketV2Args.builder() .bucket("my-tf-example-bucket") .build()); var exampleBucketOwnershipControls = new BucketOwnershipControls("exampleBucketOwnershipControls", BucketOwnershipControlsArgs.builder() .bucket(example.id()) .rule(BucketOwnershipControlsRuleArgs.builder() .objectOwnership("BucketOwnerPreferred") .build()) .build()); var exampleBucketAclV2 = new BucketAclV2("exampleBucketAclV2", BucketAclV2Args.builder() .bucket(example.id()) .acl("private") .build(), CustomResourceOptions.builder() .dependsOn(exampleBucketOwnershipControls) .build()); } }
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.BucketOwnershipControls; import com.pulumi.aws.s3.BucketOwnershipControlsArgs; import com.pulumi.aws.s3.inputs.BucketOwnershipControlsRuleArgs; import com.pulumi.aws.s3.BucketPublicAccessBlock; import com.pulumi.aws.s3.BucketPublicAccessBlockArgs; import com.pulumi.aws.s3.BucketAclV2; import com.pulumi.aws.s3.BucketAclV2Args; import com.pulumi.resources.CustomResourceOptions; 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 example = new BucketV2("example", BucketV2Args.builder() .bucket("my-tf-example-bucket") .build()); var exampleBucketOwnershipControls = new BucketOwnershipControls("exampleBucketOwnershipControls", BucketOwnershipControlsArgs.builder() .bucket(example.id()) .rule(BucketOwnershipControlsRuleArgs.builder() .objectOwnership("BucketOwnerPreferred") .build()) .build()); var exampleBucketPublicAccessBlock = new BucketPublicAccessBlock("exampleBucketPublicAccessBlock", BucketPublicAccessBlockArgs.builder() .bucket(example.id()) .blockPublicAcls(false) .blockPublicPolicy(false) .ignorePublicAcls(false) .restrictPublicBuckets(false) .build()); var exampleBucketAclV2 = new BucketAclV2("exampleBucketAclV2", BucketAclV2Args.builder() .bucket(example.id()) .acl("public-read") .build(), CustomResourceOptions.builder() .dependsOn( exampleBucketOwnershipControls, exampleBucketPublicAccessBlock) .build()); } }
package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.s3.S3Functions; import com.pulumi.aws.s3.BucketV2; import com.pulumi.aws.s3.BucketV2Args; import com.pulumi.aws.s3.BucketOwnershipControls; import com.pulumi.aws.s3.BucketOwnershipControlsArgs; import com.pulumi.aws.s3.inputs.BucketOwnershipControlsRuleArgs; import com.pulumi.aws.s3.BucketAclV2; import com.pulumi.aws.s3.BucketAclV2Args; import com.pulumi.aws.s3.inputs.BucketAclV2AccessControlPolicyArgs; import com.pulumi.aws.s3.inputs.BucketAclV2AccessControlPolicyOwnerArgs; import com.pulumi.resources.CustomResourceOptions; 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) { final var current = S3Functions.getCanonicalUserId(); var example = new BucketV2("example", BucketV2Args.builder() .bucket("my-tf-example-bucket") .build()); var exampleBucketOwnershipControls = new BucketOwnershipControls("exampleBucketOwnershipControls", BucketOwnershipControlsArgs.builder() .bucket(example.id()) .rule(BucketOwnershipControlsRuleArgs.builder() .objectOwnership("BucketOwnerPreferred") .build()) .build()); var exampleBucketAclV2 = new BucketAclV2("exampleBucketAclV2", BucketAclV2Args.builder() .bucket(example.id()) .accessControlPolicy(BucketAclV2AccessControlPolicyArgs.builder() .grants( BucketAclV2AccessControlPolicyGrantArgs.builder() .grantee(BucketAclV2AccessControlPolicyGrantGranteeArgs.builder() .id(current.applyValue(getCanonicalUserIdResult -> getCanonicalUserIdResult.id())) .type("CanonicalUser") .build()) .permission("READ") .build(), BucketAclV2AccessControlPolicyGrantArgs.builder() .grantee(BucketAclV2AccessControlPolicyGrantGranteeArgs.builder() .type("Group") .uri("http://acs.amazonaws.com/groups/s3/LogDelivery") .build()) .permission("READ_ACP") .build()) .owner(BucketAclV2AccessControlPolicyOwnerArgs.builder() .id(current.applyValue(getCanonicalUserIdResult -> getCanonicalUserIdResult.id())) .build()) .build()) .build(), CustomResourceOptions.builder() .dependsOn(exampleBucketOwnershipControls) .build()); } }
-
-
Constructor Summary
Constructors Constructor Description BucketAclV2(java.lang.String name)
BucketAclV2(java.lang.String name, BucketAclV2Args args)
BucketAclV2(java.lang.String name, BucketAclV2Args args, com.pulumi.resources.CustomResourceOptions options)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description com.pulumi.core.Output<BucketAclV2AccessControlPolicy>
accessControlPolicy()
com.pulumi.core.Output<java.util.Optional<java.lang.String>>
acl()
com.pulumi.core.Output<java.lang.String>
bucket()
com.pulumi.core.Output<java.util.Optional<java.lang.String>>
expectedBucketOwner()
static BucketAclV2
get(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, BucketAclV2State state, com.pulumi.resources.CustomResourceOptions options)
Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.
-
-
-
Constructor Detail
-
BucketAclV2
public BucketAclV2(java.lang.String name)
- Parameters:
name
- The _unique_ name of the resulting resource.
-
BucketAclV2
public BucketAclV2(java.lang.String name, BucketAclV2Args args)
- Parameters:
name
- The _unique_ name of the resulting resource.args
- The arguments to use to populate this resource's properties.
-
BucketAclV2
public BucketAclV2(java.lang.String name, BucketAclV2Args args, @Nullable com.pulumi.resources.CustomResourceOptions options)
- Parameters:
name
- The _unique_ name of the resulting resource.args
- The arguments to use to populate this resource's properties.options
- A bag of options that control this resource's behavior.
-
-
Method Detail
-
accessControlPolicy
public com.pulumi.core.Output<BucketAclV2AccessControlPolicy> accessControlPolicy()
- Returns:
- Configuration block that sets the ACL permissions for an object per grantee. See below.
-
acl
public com.pulumi.core.Output<java.util.Optional<java.lang.String>> acl()
- Returns:
- Canned ACL to apply to the bucket.
-
bucket
public com.pulumi.core.Output<java.lang.String> bucket()
- Returns:
- Bucket to which to apply the ACL.
-
expectedBucketOwner
public com.pulumi.core.Output<java.util.Optional<java.lang.String>> expectedBucketOwner()
- Returns:
- Account ID of the expected bucket owner.
-
get
public static BucketAclV2 get(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, @Nullable BucketAclV2State state, @Nullable com.pulumi.resources.CustomResourceOptions options)
Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.- Parameters:
name
- The _unique_ name of the resulting resource.id
- The _unique_ provider ID of the resource to lookup.state
-options
- Optional settings to control the behavior of the CustomResource.
-
-