getPublicAccessBlock method
Retrieves the
PublicAccessBlock configuration for an Amazon
S3 bucket. This operation returns the bucket-level configuration only. To
understand the effective public access behavior, you must also consider
account-level settings (which may inherit from organization-level
policies). To use this operation, you must have the
s3:GetBucketPublicAccessBlock permission. For more
information about Amazon S3 permissions, see Specifying
Permissions in a Policy.
For more information about when Amazon S3 considers a bucket or an object
public, see The
Meaning of "Public".
The following operations are related to GetPublicAccessBlock:
- Using Amazon S3 Block Public Access
- PutPublicAccessBlock
- GetPublicAccessBlock
- DeletePublicAccessBlock
Parameter bucket :
The name of the Amazon S3 bucket whose PublicAccessBlock
configuration you want to retrieve.
Parameter expectedBucketOwner :
The account ID of the expected bucket owner. If the account ID that you
provide does not match the actual owner of the bucket, the request fails
with the HTTP status code 403 Forbidden (access denied).
Implementation
Future<GetPublicAccessBlockOutput> getPublicAccessBlock({
required String bucket,
String? expectedBucketOwner,
}) async {
final headers = <String, String>{
if (expectedBucketOwner != null)
'x-amz-expected-bucket-owner': expectedBucketOwner.toString(),
};
final $result = await _protocol.sendRaw(
method: 'GET',
requestUri: '/${Uri.encodeComponent(bucket)}?publicAccessBlock',
headers: headers,
exceptionFnMap: _exceptionFns,
);
final $elem = await _s.xmlFromResponse($result);
return GetPublicAccessBlockOutput(
publicAccessBlockConfiguration:
PublicAccessBlockConfiguration.fromXml($elem),
);
}