deletePublicAccessBlock method

Future<void> deletePublicAccessBlock({
  1. required String bucket,
  2. String? expectedBucketOwner,
})

Removes the PublicAccessBlock configuration for an Amazon S3 bucket. To use this operation, you must have the s3:PutBucketPublicAccessBlock permission. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

The following operations are related to DeletePublicAccessBlock:

Parameter bucket : The Amazon S3 bucket whose PublicAccessBlock configuration you want to delete.

Parameter expectedBucketOwner : The account id of the expected bucket owner. If the bucket is owned by a different account, the request will fail with an HTTP 403 (Access Denied) error.

Implementation

Future<void> deletePublicAccessBlock({
  required String bucket,
  String? expectedBucketOwner,
}) async {
  ArgumentError.checkNotNull(bucket, 'bucket');
  final headers = <String, String>{
    if (expectedBucketOwner != null)
      'x-amz-expected-bucket-owner': expectedBucketOwner.toString(),
  };
  await _protocol.send(
    method: 'DELETE',
    requestUri: '/${Uri.encodeComponent(bucket)}?publicAccessBlock',
    headers: headers,
    exceptionFnMap: _exceptionFns,
  );
}