AWS SDK for Go (PILOT)
API Reference

PREVIEW DOCUMENTATION - This is a preview of a new format for the AWS SDK for Go API Reference documentation. For the current AWS SDK for Go API Reference, see https://docs.aws.amazon.com/sdk-for-go/api/.

We welcome your feedback on this new version of the documentation. Send your comments to aws-sdkdocs-feedback@amazon.com.

PutPublicAccessBlockInput

import "github.com/aws/aws-sdk-go/service/s3control"

type PutPublicAccessBlockInput struct { AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` PublicAccessBlockConfiguration *PublicAccessBlockConfiguration `locationName:"PublicAccessBlockConfiguration" type:"structure" required:"true" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` }

AccountId

Type: *string

The Account ID for the Amazon Web Services account whose Public Access Block configuration you want to set.

AccountId is a required field

PublicAccessBlockConfiguration

The container element for all Public Access Block configuration options. You can enable the configuration options in any combination.

Amazon S3 considers a bucket policy public unless at least one of the following conditions is true:

The policy limits access to a set of CIDRs using aws:SourceIp. For more information on CIDR, see http://www.rfc-editor.org/rfc/rfc4632.txt (http://www.rfc-editor.org/rfc/rfc4632.txt)

The policy grants permissions, not including any "bad actions," to one of the following:

A fixed AWS principal, user, role, or service principal

A fixed aws:SourceArn

A fixed aws:SourceVpc

A fixed aws:SourceVpce

A fixed aws:SourceOwner

A fixed aws:SourceAccount

A fixed value of s3:x-amz-server-side-encryption-aws-kms-key-id

A fixed value of aws:userid outside the pattern "AROLEID:*"

"Bad actions" are those that could expose the data inside a bucket to reads or writes by the public. These actions are s3:Get*, s3:List*, s3:AbortMultipartUpload, s3:Delete*, s3:Put*, and s3:RestoreObject.

The star notation for bad actions indicates that all matching operations are considered bad actions. For example, because s3:Get* is a bad action, s3:GetObject, s3:GetObjectVersion, and s3:GetObjectAcl are all bad actions.

Method

GoString

func (s PutPublicAccessBlockInput) GoString() string

GoString returns the string representation

SetAccountId

func (s *PutPublicAccessBlockInput) SetAccountId(v string) *PutPublicAccessBlockInput

SetAccountId sets the AccountId field's value.

SetPublicAccessBlockConfiguration

func (s *PutPublicAccessBlockInput) SetPublicAccessBlockConfiguration(v *PublicAccessBlockConfiguration) *PutPublicAccessBlockInput

SetPublicAccessBlockConfiguration sets the PublicAccessBlockConfiguration field's value.

String

func (s PutPublicAccessBlockInput) String() string

String returns the string representation

Validate

func (s *PutPublicAccessBlockInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

On this page: