This topic lists the common features of OSS.

Before you start to use OSS, we recommend that you have a good understanding of basic terms used in OSS, such as bucket, object, region, and endpoint. For more information about the basic terms used in OSS, see Terms.

The following table lists the features provided by OSS.

Scenario Description Reference
Upload objects Before uploading objects to OSS, you must create a bucket in an Alibaba Cloud region to store your objects. After you create a bucket, you can upload objects to the bucket.
Search for objects You can search for objects or folders in a bucket. Search for objects
View or download objects You can use the URL of an object to view or download the object. Obtain object URLs
Delete objects or folders You can delete objects or folders on OSS. You can also delete parts generated by multipart uploads to save storage space.
Configure versioning When versioning is enabled for a bucket, data that is overwritten or deleted is saved as a previous version. Versioning allows you to restore objects in a bucket to any previous point in time, and protects your data from being accidentally overwritten or deleted. Versioning
Control access to OSS resources You can control access to OSS resources by using the following methods:
  • ACL: OSS provides access control lists (ACLs) for you to control access. ACL is an access policy that authorizes access to buckets and objects. You can configure the ACL when creating a bucket or uploading an object, or modify the ACL at any time afterwards.
  • Bucket policy: You can use bucket policies to authorize other users to access your OSS resources through the console. For example, you can authorize RAM users of other Alibaba Cloud accounts to access your OSS resources, and authorize anonymous users to access your OSS resources from specific IP addresses.
  • RAM policy: You can create RAM policies to control access to buckets and folders. OSS provides the RAM Policy Editor to help you generate the required RAM policies. For more information, see RAM Policy Editor
Bucket tagging OSS allows you to configure bucket tagging to classify and manage buckets. For example, you can configure this feature to list only buckets that have specific tags. Configure bucket tagging
Object tagging OSS allows you to configure object tagging to classify objects. You can configure lifecycle rules and ACLs for objects based on tags. Configure object tagging
Record the access information for OSS resources You can enable logging to record the detailed access information for OSS resources. Access logging
Prevent data on OSS from being hotlinked You can configure hotlink protection for a bucket, such as configuring a Referer whitelist and whether to allow access requests with an empty Referer field. Configure hotlink protection
Access OSS resources through custom domain names You can bind a custom domain name to an OSS bucket and then use the custom domain name to access data in the bucket. You can also activate Alibaba Cloud CDN to accelerate access to the data in your bucket. If you want to use your domain name to access OSS through HTTPS, you can host your SSL certificate through OSS.
Access a bucket through static web pages You can configure static website hosting for your bucket and access this static website through the bucket endpoint. Configure static website hosting
Configure CORS OSS provides Cross-Origin Resource Sharing (CORS) in HTML5. CORS allows client web applications that are loaded in one domain to interact with resources in another domain. Set CORS rules
Automatically delete multiple objects at a specified point in time You can specify and manage the lifecycle of specific objects or all objects in a bucket. For example, you can delete a specific object or convert it to a cheaper storage class after a period of time. Manage object lifecycle
Replicate data from one bucket to another across regions Cross-region replication enables automatic and asynchronous replication of objects across buckets in different OSS regions. It synchronizes operations such as the create, overwriting, and delete operations on objects from the source bucket to the destination bucket. Cross-region replication
Obtain content from the origin You can configure back-to-origin rules to specify whether to obtain source data through mirroring or redirection. You can configure back-to-origin rules for online data migration and specific request redirection. Manage back-to-origin configurations
Encrypt uploaded data You can use server-side encryption to encrypt and store your data in OSS. Server-side encryption
Create data retention policies You can create a retention policy to set the data retention period. Your data cannot be deleted by any users within this period. Compliant retention policy
Zone-disaster recovery OSS uses the multi-zone mechanism to distribute user data across three zones within the same region. Even if one zone becomes unavailable, the data can still be accessible. This feature can provide data durability of 99.9999999999% (twelve 9's) and service availability of 99.995%. Zone-redundant storage (ZRS)
Modify HTTP headers OSS allows you to configure HTTP headers to customize HTTP request policies such as the cache policy and forced file download policy. Set an HTTP header
View resource usage You can view real-time information about OSS service usage, such as the status and performance of the basic system operation. Monitoring service overview
Process images stored in OSS You can perform operations such as format conversion, cropping, scaling, rotating, watermarking, and style encapsulation on images stored in OSS. Image processing
Use tools to manage OSS resources OSS provides graphical, CLI, file mounting, and FTP tools for you to manage OSS resources. OSS tools
Single-connection bandwidth throttling OSS allows you to configure bandwidth throttling for upload, download, and copy operations in OSS to ensure sufficient bandwidth for other applications. Single-connection bandwidth throttling
Use APIs and SDKs to manage OSS resources OSS provides RESTful APIs and SDKs in multiple programming languages to facilitate secondary development.