Actions Supported by Policy-based Authorization
This section describes the actions supported by OBS in policy-based authorization.
Supported Actions
OBS provides system-defined policies that can be directly used in IAM. You can also create custom policies to supplement system-defined policies for more refined access control. Operations supported by policies are specific to APIs. The following are common concepts related to policies:
- Permissions: statements in a policy that allow or deny certain operations
- APIs: REST APIs that can be called by a user who has been granted specific permissions
- Actions: specific operations that are allowed or denied in a custom policy
- Dependencies: actions which a specific action depends on. When allowing an action for a user, you also need to allow any existing action dependencies for that user.
- IAM projects/Enterprise projects: the authorization scope of a custom policy. A custom policy can be applied to IAM projects or enterprise projects or both. Policies that contain actions for both IAM and enterprise projects can be used and applied for both IAM and Enterprise Management. Policies that contain actions only for IAM projects can be used and applied to IAM only. Administrators can check whether an action supports IAM projects or enterprise projects in the action list. For details about the differences between IAM and enterprise management, see Differences Between IAM and Enterprise Management.
OBS supports the following actions in custom policies:
- Bucket actions (corresponding to OBS bucket operation APIs): the actions for creating, listing, or deleting buckets, listing objects, configuring bucket access permissions and lifecycle rules, and others
- Object actions (corresponding to OBS object operation APIs): the actions for uploading, downloading, or deleting objects, configuring object access permissions, and others
Bucket Actions
|
Permission |
API |
Action |
IAM Project |
Enterprise Project |
|---|---|---|---|---|
|
Listing all buckets |
obs:bucket:ListAllMyBuckets |
Supported |
Supported |
|
|
Creating a bucket |
obs:bucket:CreateBucket |
Supported |
Supported |
|
|
Listing objects in a bucket |
obs:bucket:ListBucket |
Supported |
Supported |
|
|
Listing object versions in a bucket |
obs:bucket:ListBucketVersions |
Supported |
Supported |
|
|
Determining whether a bucket exists and obtaining the bucket metadata |
obs:bucket:HeadBucket |
Supported |
Supported |
|
|
Obtaining the bucket location |
obs:bucket:GetBucketLocation |
Supported |
Supported |
|
|
Deleting a bucket |
obs:bucket:DeleteBucket |
Supported |
Supported |
|
|
Configuring a bucket policy |
obs:bucket:PutBucketPolicy |
Supported |
Supported |
|
|
Obtain the bucket policy configurations |
obs:bucket:GetBucketPolicy |
Supported |
Supported |
|
|
Deleting a bucket policy |
obs:bucket:DeleteBucketPolicy |
Supported |
Supported |
|
|
Configuring the bucket ACL |
obs:bucket:PutBucketAcl |
Supported |
Supported |
|
|
Obtaining the bucket ACL information |
obs:bucket:GetBucketAcl |
Supported |
Supported |
|
|
Configuring logging for a bucket |
obs:bucket:PutBucketLogging |
Supported |
Supported |
|
|
Obtaining the logging configurations of a bucket |
obs:bucket:GetBucketLogging |
Supported |
Supported |
|
|
Configuring or deleting a lifecycle rule |
obs:bucket:PutLifecycleConfiguration |
Supported |
Supported |
|
|
Obtaining the lifecycle rule configurations of a bucket |
obs:bucket:GetLifecycleConfiguration |
Supported |
Supported |
|
|
Configuring versioning for a bucket |
obs:bucket:PutBucketVersioning |
Supported |
Supported |
|
|
Obtaining the versioning configurations of a bucket |
obs:bucket:GetBucketVersioning |
Supported |
Supported |
|
|
Configuring storage class for a bucket |
obs:bucket:PutBucketStoragePolicy |
Supported |
Supported |
|
|
Obtaining the storage class of a bucket |
obs:bucket:GetBucketStoragePolicy |
Supported |
Supported |
|
|
Configuring cross-region replication for a bucket |
obs:bucket:PutReplicationConfiguration |
Supported |
Supported |
|
|
Obtaining the cross-region replication configuration of a bucket |
Obtaining the Cross-Region Replication Configuration of a Bucket |
obs:bucket:GetReplicationConfiguration |
Supported |
Supported |
|
Deleting the cross-region replication configuration of a bucket |
Deleting the Cross-Region Replication Configuration of a Bucket |
obs:bucket:DeleteReplicationConfiguration |
Supported |
Supported |
|
Adding tags to a bucket |
obs:bucket:PutBucketTagging |
Supported |
Supported |
|
|
Obtaining bucket tags |
obs:bucket:GetBucketTagging |
Supported |
Supported |
|
|
Deleting bucket tags |
obs:bucket:DeleteBucketTagging |
Supported |
Supported |
|
|
Limiting storage capacity for a bucket |
obs:bucket:PutBucketQuota |
Supported |
Supported |
|
|
Querying the storage capacity limit of a bucket |
obs:bucket:GetBucketQuota |
Supported |
Supported |
|
|
Querying the used capacity of a bucket |
obs:bucket:GetBucketStorage |
Supported |
Supported |
|
|
Configuring inventories for a bucket |
obs:bucket:PutBucketInventoryConfiguration |
Supported |
Supported |
|
|
Obtaining a specific inventory or listing all inventories of a bucket |
obs:bucket:GetBucketInventoryConfiguration |
Supported |
Supported |
|
|
Deleting bucket inventories |
obs:bucket:DeleteBucketInventoryConfiguration |
Supported |
Supported |
|
|
Configuring a user-defined domain name for a bucket |
obs:bucket:PutBucketCustomDomainConfiguration |
Supported |
Supported |
|
|
Obtaining the user-defined domain name of a bucket |
obs:bucket:GetBucketCustomDomainConfiguration |
Supported |
Supported |
|
|
Deleting the user-defined domain name of a bucket |
obs:bucket:DeleteBucketCustomDomainConfiguration |
Supported |
Supported |
|
|
Configuring or deleting encryption for a bucket |
obs:bucket:PutEncryptionConfiguration |
Supported |
Supported |
|
|
Obtaining the encryption configurations of a bucket |
obs:bucket:GetEncryptionConfiguration |
Supported |
Supported |
|
|
Configuring direct reading for Archive objects in a bucket |
obs:bucket:PutDirectColdAccessConfiguration |
Supported |
Supported |
|
|
Obtaining the direct reading policy of Archive objects in a bucket |
Obtaining the Direct Reading Policy of Archive Objects in a Bucket |
obs:bucket:GetDirectColdAccessConfiguration |
Supported |
Supported |
|
Deleting the direct reading policy of Archive objects in a bucket |
Deleting the Direct Reading Policy of Archive Objects in a Bucket |
obs:bucket:DeleteDirectColdAccessConfiguration |
Supported |
Supported |
|
Configuring static website hosting for a bucket |
obs:bucket:PutBucketWebsite |
Supported |
Supported |
|
|
Obtaining the static website hosting configurations of a bucket |
Obtaining the Static Website Hosting Configuration of a Bucket |
obs:bucket:GetBucketWebsite |
Supported |
Supported |
|
Deleting the static website hosting configurations of a bucket |
Deleting the Static Website Hosting Configuration of a Bucket |
obs:bucket:DeleteBucketWebsite |
Supported |
Supported |
|
Configuring or deleting CORS rules for a bucket |
obs:bucket:PutBucketCORS |
Supported |
Supported |
|
|
Obtaining the CORS configurations of a bucket |
obs:bucket:GetBucketCORS |
Supported |
Supported |
|
|
Deleting an online decompression policy |
obs:notificationPolicy:DeleteDecompressRules |
Supported |
Supported |
|
|
Configuring a default WORM policy for a bucket |
obs:bucket:PutBucketObjectLockConfiguration |
Supported |
Supported |
|
|
Obtaining the default WORM policy of a bucket |
obs:bucket:GetBucketObjectLockConfiguration |
Supported |
Supported |
|
|
Configuring public access block for a bucket |
obs:bucket:PutBucketPublicAccessBlock |
Supported |
Supported |
|
|
Obtaining the public access block configuration of a bucket |
obs:bucket:GetBucketPublicAccessBlock |
Supported |
Supported |
|
|
Deleting the public access block configuration of a bucket |
obs:bucket:DeleteBucketPublicAccessBlock |
Supported |
Supported |
|
|
Obtaining the public access status of a bucket |
obs:bucket:GetBucketPublicStatus |
Supported |
Supported |
|
|
Obtaining the public access status of a bucket policy |
obs:bucket:GetBucketPolicyPublicStatus |
Supported |
Supported |
|
|
Listing initiated multipart uploads in a bucket |
obs:bucket:ListBucketMultipartUploads |
Supported |
Supported |
Object Actions
|
Permission |
API |
Action |
IAM Project |
Enterprise Project |
|---|---|---|---|---|
|
Uploading objects using PUT or POST, copying objects, appending objects, modifying objects, truncating objects, renaming objects, initiating multipart uploads, uploading parts, copying parts, and assembling parts |
obs:object:PutObject |
Supported |
Supported |
|
|
Obtaining the content and metadata of an object |
obs:object:GetObject |
Supported |
Supported |
|
|
Obtaining the content and metadata of a specific object version |
obs:object:GetObjectVersion |
Supported |
Supported |
|
|
Deleting a single object or a batch of objects |
obs:object:DeleteObject |
Supported |
Supported |
|
|
Deleting a single object version or a batch of object versions |
obs:object:DeleteObjectVersion |
Supported |
Supported |
|
|
Restoring Archive objects |
obs:object:RestoreObject |
Supported |
Supported |
|
|
Configuring the object ACL |
obs:object:PutObjectAcl |
Supported |
Supported |
|
|
Configuring the ACL for a specific object version |
obs:object:PutObjectVersionAcl |
Supported |
Supported |
|
|
Obtaining the object ACL information |
obs:object:GetObjectAcl |
Supported |
Supported |
|
|
Obtaining the ACL information of a specific object version |
obs:object:GetObjectVersionAcl |
Supported |
Supported |
|
|
Modifying object metadata |
obs:object:ModifyObjectMetaData |
Supported |
Supported |
|
|
Listing uploaded parts |
obs:object:ListMultipartUploadParts |
Supported |
Supported |
|
|
Aborting a multipart upload |
obs:object:AbortMultipartUpload |
Supported |
Supported |
|
|
Adding object tags |
obs:object:PutObjectTagging |
Supported |
Supported |
|
|
Obtaining object tags |
obs:object:GetObjectTagging |
Supported |
Supported |
|
|
Deleting object tags |
obs:object:DeleteObjectTagging |
Supported |
Supported |
|
|
Configuring WORM retention for an object |
obs:object:PutObjectRetention |
Supported |
Supported |
|
|
Obtaining the object-level WORM retention configuration |
obs:object:GetObjectRetention |
Supported |
Supported |
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot