Updated on 2024-04-17 GMT+08:00

Setting Object Properties

Function

You can use this command to set properties of an object or set properties of objects in batches by a specified object name prefix.

Command Line Structure

  • In Windows
    • Setting properties of a single object
      obsutil chattri obs://bucket/key [-meta=aaa:bbb#ccc:ddd] [-acl=xxx] [-aclXml=xxx] [-versionId=xxx] [-fr] [-o=xxx] [-config=xxx] 
    • Setting properties of objects in batches
      obsutil chattri obs://bucket[/key] -r [-f] [-v] [-meta=aaa:bbb#ccc:ddd] [-acl=xxx] [-aclXml=xxx] [-o=xxx] [-j=1] [-config=xxx] 
  • In Linux or macOS
    • Setting properties of a single object
      ./obsutil chattri obs://bucket/key [-meta=aaa:bbb#ccc:ddd] [-acl=xxx] [-aclXml=xxx] [-versionId=xxx] [-fr] [-o=xxx] [-config=xxx] 
    • Setting properties of objects in batches
      ./obsutil chattri obs://bucket[/key] -r [-f] [-v] [-meta=aaa:bbb#ccc:ddd] [-acl=xxx] [-aclXml=xxx] [-o=xxx] [-j=1] [-config=xxx] 

Examples

  • Take the Windows OS as an example, run the obsutil chattri obs://bucket-test/key -acl=public-read command to set the access permission to an object to public read.
    obsutil chattri obs://bucket-test/key -acl=public-read
    
    Set the acl of object [key] in the bucket [bucket-test] to [public-read] successfully, request id [04050000016836DDFA73B2B5320E2651]
  • Take the Windows OS as an example, run the obsutil chattri obs://bucket-test -r -f -acl=public-read command to set the access permission to all objects in the bucket to public read.
    obsutil chattri obs://bucket-test -r -f -acl=public-read
    
    [------------------------------------------------] 100.00% tps:155.15 5/5 233ms
    Succeed count is:   5         Failed count is:    0
    Metrics [max cost:177 ms, min cost:53 ms, average cost:102.40 ms, average tps:20.41]
    Task id is: 9d7f73ff-f747-4fdd-9b2a-815ba2dc3b07

Parameter Description

Parameter

Optional or Mandatory

Description

bucket

Mandatory

Bucket name

key

Mandatory when setting properties of an object.

Optional when setting properties of objects in batches.

Indicates the name of the object whose properties are to be set, or the name prefix of objects whose properties are to be set in batches.

NOTE:

If this parameter is left blank during batch operation, properties of all objects in the bucket are set.

meta

Optional (additional parameter)

Standard or custom metadata that can be specified for destination objects in object replication. This parameter should be configured in the following format: key1:value1#key2:value2#key3:value3.

NOTE:
  1. This parameter takes effect only when it is used together with direct.
  2. This value indicates that the destination objects contain three groups of custom metadata: key1:value1, key2:value2, and key3:value3.
  3. Standard metadata headers include Content-Type, Content-Encoding, Cache-Control, Content-Disposition, Content-Language and Expires.

direct

Optional (additional parameter)

Metadata operation indicator.

The value can be REPLACE_NEW or REPLACE.

REPLACE_NEW: The existing metadata value is replaced with a new one, the metadata lacking a value is assigned one, and the metadata not specified keeps unchanged.

REPLACE: The metadata is replaced with the header included in the current request and the metadata not specified is deleted.

NOTE:

This parameter takes effect only when it is used together with meta.

acl

Optional (additional parameter)

Access control policies that can be specified for objects. Possible values are:

  • private
  • public-read
  • public-read-write
  • bucket-owner-full-control
NOTE:

The preceding four values indicate private read and write, public read, public read and write, and bucket owner full control.

aclXml

Optional (additional parameter)

Access control policy of the bucket, in XML format.

<AccessControlPolicy>
    <Owner>
        <ID>ownerid</ID>
    </Owner>
    <AccessControlList>
        <Grant>
            <Grantee>
                <ID>userid</ID>
            </Grantee>
            <Permission>[WRITE|WRITE_ACP|READ|READ_ACP|FULL_CONTROL]</Permission>
        </Grant>
        <Grant>
            <Grantee>
                <Canned>Everyone</Canned>
            </Grantee>
            <Permission>[WRITE|WRITE_ACP|READ|READ_ACP|FULL_CONTROL]</Permission>
        </Grant>
    </AccessControlList>
</AccessControlPolicy>
NOTE:
  • Owner: Optional. Specify the object owner's ID.
  • In AccessControlList, the Grant field contains the authorized users. Grantee specifies the IDs of authorized users. Canned specifies the authorized user group (currently, only Everyone is supported).
  • The following permissions can be granted: WRITE (write), WRITE_ACP (write ACL), READ (read), READ_ACP (read ACL), and FULL_CONTROL (full control).
NOTICE:

Because angle brackets (<) and (>) are unavoidably included in the parameter value, you must use quotation marks to enclose them for escaping when running the command. Use single quotation marks for Linux or macOS and quotation marks for Windows.

versionId

Optional when setting properties of an object (additional parameter)

Version ID of the object whose properties are to be set

fr

Optional when setting properties of an object (additional parameter)

Generates an operation result list when setting properties of an object.

f

Optional when setting properties of objects in batches (additional parameter)

Runs in force mode.

r

Mandatory when setting properties of objects in batches (additional parameter)

Sets properties of objects in batches based on a specified object name prefix.

v

Optional when setting properties of objects in batches (additional parameter)

Sets properties of versions of objects in batches based on a specified object name prefix.

o

Optional (additional parameter)

Indicates the folder where operation result lists reside. After the command is executed, result lists (including success and failure files) are generated in the folder. The default value is .obsutil_output, the subfolder in the home directory of the user who executes obsutil commands.

NOTE:
  • The naming rule for result lists is as follows: chattri_{succeed | failed}_report_time_TaskId.txt

    By default, the maximum size of a single result list is 30 MB and the maximum number of result lists that can be retained is 1024. You can set the maximum size and number by configuring recordMaxLogSize and recordBackups in the configuration file.

  • If there are multiple folders and files and you need to confirm the detailed error information about a failed task, refer to the failure list chattri_failed_report_time_TaskId.txt in the result list folder and the log files in the log path.

j

Optional when setting properties of objects in batches (additional parameter)

Indicates the maximum number of concurrent tasks for setting object properties in batches. The default value is the value of defaultJobs in the configuration file.

NOTE:

The value is ensured to be greater than or equal to 1.

config

Optional (additional parameter)

User-defined configuration file for executing a command. For details about parameters that can be configured, see Parameter Description.

Only one from acl or aclXml can be set for each command.

Response

Refer to Response for uploading an object.