Struct aws_sdk_s3control::operation::put_bucket_policy::builders::PutBucketPolicyFluentBuilder
source · pub struct PutBucketPolicyFluentBuilder { /* private fields */ }
Expand description
Fluent builder constructing a request to PutBucketPolicy
.
This action puts a bucket policy to an Amazon S3 on Outposts bucket. To put a policy on an S3 bucket, see PutBucketPolicy in the Amazon S3 API Reference.
Applies an Amazon S3 bucket policy to an Outposts bucket. For more information, see Using Amazon S3 on Outposts in the Amazon S3 User Guide.
If you are using an identity other than the root user of the Amazon Web Services account that owns the Outposts bucket, the calling identity must have the PutBucketPolicy
permissions on the specified Outposts bucket and belong to the bucket owner's account in order to use this action.
If you don't have PutBucketPolicy
permissions, Amazon S3 returns a 403 Access Denied
error. If you have the correct permissions, but you're not using an identity that belongs to the bucket owner's account, Amazon S3 returns a 405 Method Not Allowed
error.
As a security precaution, the root user of the Amazon Web Services account that owns a bucket can always use this action, even if the policy explicitly denies the root user the ability to perform this action.
For more information about bucket policies, see Using Bucket Policies and User Policies.
All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id
to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control
. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id
derived by using the access point ARN, see the Examples section.
The following actions are related to PutBucketPolicy
:
Implementations§
source§impl PutBucketPolicyFluentBuilder
impl PutBucketPolicyFluentBuilder
sourcepub fn as_input(&self) -> &PutBucketPolicyInputBuilder
pub fn as_input(&self) -> &PutBucketPolicyInputBuilder
Access the PutBucketPolicy as a reference.
sourcepub async fn send(
self
) -> Result<PutBucketPolicyOutput, SdkError<PutBucketPolicyError, HttpResponse>>
pub async fn send( self ) -> Result<PutBucketPolicyOutput, SdkError<PutBucketPolicyError, HttpResponse>>
Sends the request and returns the response.
If an error occurs, an SdkError
will be returned with additional details that
can be matched against.
By default, any retryable failures will be retried twice. Retry behavior is configurable with the RetryConfig, which can be set when configuring the client.
sourcepub fn customize(
self
) -> CustomizableOperation<PutBucketPolicyOutput, PutBucketPolicyError, Self>
pub fn customize( self ) -> CustomizableOperation<PutBucketPolicyOutput, PutBucketPolicyError, Self>
Consumes this builder, creating a customizable operation that can be modified before being sent.
sourcepub fn account_id(self, input: impl Into<String>) -> Self
pub fn account_id(self, input: impl Into<String>) -> Self
The Amazon Web Services account ID of the Outposts bucket.
sourcepub fn set_account_id(self, input: Option<String>) -> Self
pub fn set_account_id(self, input: Option<String>) -> Self
The Amazon Web Services account ID of the Outposts bucket.
sourcepub fn get_account_id(&self) -> &Option<String>
pub fn get_account_id(&self) -> &Option<String>
The Amazon Web Services account ID of the Outposts bucket.
sourcepub fn bucket(self, input: impl Into<String>) -> Self
pub fn bucket(self, input: impl Into<String>) -> Self
Specifies the bucket.
For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.
For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:
. For example, to access the bucket reports
through Outpost my-outpost
owned by account 123456789012
in Region us-west-2
, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports
. The value must be URL encoded.
sourcepub fn set_bucket(self, input: Option<String>) -> Self
pub fn set_bucket(self, input: Option<String>) -> Self
Specifies the bucket.
For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.
For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:
. For example, to access the bucket reports
through Outpost my-outpost
owned by account 123456789012
in Region us-west-2
, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports
. The value must be URL encoded.
sourcepub fn get_bucket(&self) -> &Option<String>
pub fn get_bucket(&self) -> &Option<String>
Specifies the bucket.
For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.
For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:
. For example, to access the bucket reports
through Outpost my-outpost
owned by account 123456789012
in Region us-west-2
, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports
. The value must be URL encoded.
sourcepub fn confirm_remove_self_bucket_access(self, input: bool) -> Self
pub fn confirm_remove_self_bucket_access(self, input: bool) -> Self
Set this parameter to true to confirm that you want to remove your permissions to change this bucket policy in the future.
This is not supported by Amazon S3 on Outposts buckets.
sourcepub fn set_confirm_remove_self_bucket_access(self, input: Option<bool>) -> Self
pub fn set_confirm_remove_self_bucket_access(self, input: Option<bool>) -> Self
Set this parameter to true to confirm that you want to remove your permissions to change this bucket policy in the future.
This is not supported by Amazon S3 on Outposts buckets.
sourcepub fn get_confirm_remove_self_bucket_access(&self) -> &Option<bool>
pub fn get_confirm_remove_self_bucket_access(&self) -> &Option<bool>
Set this parameter to true to confirm that you want to remove your permissions to change this bucket policy in the future.
This is not supported by Amazon S3 on Outposts buckets.
sourcepub fn set_policy(self, input: Option<String>) -> Self
pub fn set_policy(self, input: Option<String>) -> Self
The bucket policy as a JSON document.
sourcepub fn get_policy(&self) -> &Option<String>
pub fn get_policy(&self) -> &Option<String>
The bucket policy as a JSON document.
Trait Implementations§
source§impl Clone for PutBucketPolicyFluentBuilder
impl Clone for PutBucketPolicyFluentBuilder
source§fn clone(&self) -> PutBucketPolicyFluentBuilder
fn clone(&self) -> PutBucketPolicyFluentBuilder
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreAuto Trait Implementations§
impl Freeze for PutBucketPolicyFluentBuilder
impl !RefUnwindSafe for PutBucketPolicyFluentBuilder
impl Send for PutBucketPolicyFluentBuilder
impl Sync for PutBucketPolicyFluentBuilder
impl Unpin for PutBucketPolicyFluentBuilder
impl !UnwindSafe for PutBucketPolicyFluentBuilder
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more