All Products
Search
Document Center

Object Storage Service:0017-00000105

Last Updated:Apr 28, 2024

Problem description

The x-oss-object-acl request header in the request is missing or left empty.

Causes

For example, you initiate a PutObjectAcl request and use the x-oss-object-acl request header to specify the ACL of an object. If the request header is missing in the request or the value of the request header is an empty string, an error is reported.

Examples

For example, you initiate the following request:

PUT /test-object?acl HTTP/1.1
x-oss-object-acl:
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
Date: Wed, 29 Apr 2015 05:21:12 GMT
Authorization: OSS qn6q**************:77Dv****************

In the preceding request, the value of the x-oss-object-acl request header is left empty, which is not a valid ACL name. An error is returned.

Solutions

Check whether the value of the x-oss-object-acl request header in the request is valid. Valid values include:

  • default: The ACL of the object is the same as the ACL of the bucket in which the object is stored. This is the default value.

  • private: The ACL of the object is private. Only the owner of the object and authorized users have read and write permissions on the object. Other users have no permissions on the object.

  • public-read: The ACL of the object is public read. Only the owner of the object and authorized users have read and write permissions on the object. Other users can only read the object. Exercise caution when you set x-oss-object-acl to this value.

  • public-read-write: The ACL of the object is public read/write. All users have read and write permissions on the object. Exercise caution when you set x-oss-object-acl to this value.

References