Problem description
You attempted a write operation on an OSS object, but either your credentials are invalid or your account lacks write permissions on that object.
Causes
This error has two distinct root causes:
Authentication failure — Your identity cannot be verified:
The AccessKey ID or AccessKey secret you provided is invalid.
Authorization failure — Your credentials are valid, but your account lacks write permissions on the target object.
Examples
You send a DeleteObject request to delete an object whose access control list (ACL) is private or public-read. The request fails because the signature is invalid, or the account identified by the signature is not the owner of the bucket containing the object.
Solutions
Fix an invalid AccessKey ID or AccessKey secret
Verify that the AccessKey ID and AccessKey secret you are using are correct and active.
Fix insufficient permissions for a RAM user or STS credentials
If you are using a RAM user or temporary access credentials obtained from Security Token Service (STS), make sure the account has the required permissions for the operation. For details, see Tutorial: Use RAM policies to control access to OSS and Common examples of RAM policies.
Grant public write access (not recommended)
If you own the bucket and need to allow all users, including anonymous users, to modify objects in the bucket, set the ACL of the bucket or object to public-read-write.
Setting the ACL to public-read-write allows anyone to perform read and write operations on the bucket or object. This exposes your bucket or object to risks. We recommend that you do not use this solution. For details, see Bucket ACL and Object ACL.