Learn R Programming

paws.storage (version 0.1.11)

s3_put_bucket_logging: Set the logging parameters for a bucket and to specify permissions for who can view and modify the logging parameters

Description

Set the logging parameters for a bucket and to specify permissions for who can view and modify the logging parameters. All logs are saved to buckets in the same AWS Region as the source bucket. To set the logging status of a bucket, you must be the bucket owner.

The bucket owner is automatically granted FULL_CONTROL to all logs. You use the Grantee request element to grant access to other people. The Permissions request element specifies the kind of access the grantee has to the logs.

Grantee Values

You can specify the person (grantee) to whom you're assigning access rights (using request elements) in the following ways:

  • By the person's ID:

    <Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="CanonicalUser"><ID><>ID<></ID><DisplayName><>GranteesEmail<></DisplayName> </Grantee>

    DisplayName is optional and ignored in the request.

  • By Email address:

    <Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="AmazonCustomerByEmail"><EmailAddress><>Grantees@email.com<></EmailAddress></Grantee>

    The grantee is resolved to the CanonicalUser and, in a response to a GET Object acl request, appears as the CanonicalUser.

  • By URI:

    <Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="Group"><URI><>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<></URI></Grantee>

To enable logging, you use LoggingEnabled and its children request elements. To disable logging, you use an empty BucketLoggingStatus request element:

<BucketLoggingStatus xmlns="http://doc.s3.amazonaws.com/2006-03-01" />

For more information about server access logging, see Server Access Logging.

For more information about creating a bucket, see create_bucket. For more information about returning the logging status of a bucket, see get_bucket_logging.

The following operations are related to put_bucket_logging:

Usage

s3_put_bucket_logging(Bucket, BucketLoggingStatus, ContentMD5,
  ExpectedBucketOwner)

Arguments

Bucket

[required] The name of the bucket for which to set the logging parameters.

BucketLoggingStatus

[required] Container for logging status information.

ContentMD5

The MD5 hash of the put_bucket_logging request body.

For requests made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is calculated automatically.

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.

Value

An empty list.

Request syntax

svc$put_bucket_logging(
  Bucket = "string",
  BucketLoggingStatus = list(
    LoggingEnabled = list(
      TargetBucket = "string",
      TargetGrants = list(
        list(
          Grantee = list(
            DisplayName = "string",
            EmailAddress = "string",
            ID = "string",
            Type = "CanonicalUser"|"AmazonCustomerByEmail"|"Group",
            URI = "string"
          ),
          Permission = "FULL_CONTROL"|"READ"|"WRITE"
        )
      ),
      TargetPrefix = "string"
    )
  ),
  ContentMD5 = "string",
  ExpectedBucketOwner = "string"
)

Examples

Run this code
# NOT RUN {
# The following example sets logging policy on a bucket. For the Log
# Delivery group to deliver logs to the destination bucket, it needs
# permission for the READ_ACP action which the policy grants.
svc$put_bucket_logging(
  Bucket = "sourcebucket",
  BucketLoggingStatus = list(
    LoggingEnabled = list(
      TargetBucket = "targetbucket",
      TargetGrants = list(
        list(
          Grantee = list(
            Type = "Group",
            URI = "http://acs.amazonaws.com/groups/global/AllUsers"
          ),
          Permission = "READ"
        )
      ),
      TargetPrefix = "MyBucketLogs/"
    )
  )
)
# }
# NOT RUN {
# }

Run the code above in your browser using DataLab