From b55201d729fd4b3baa4caf762ba68dcd33a45f7c Mon Sep 17 00:00:00 2001 From: zhangyue Date: Mon, 18 Mar 2024 15:39:30 +0000 Subject: [PATCH] OBS UMN DOC Reviewed-by: Sabelnikov, Dmitriy Co-authored-by: zhangyue Co-committed-by: zhangyue --- docs/obs/umn/ALL_META.TXT.json | 3337 +++++++++++++++-- docs/obs/umn/CLASS.TXT.json | 1023 ++--- docs/obs/umn/en-us_image_0000001730497813.png | Bin 0 -> 422 bytes ...2.png => en-us_image_0000001801955289.png} | Bin docs/obs/umn/en-us_image_0145847198.png | Bin 36775 -> 0 bytes docs/obs/umn/en-us_image_0154344913.png | Bin 114570 -> 0 bytes docs/obs/umn/en-us_image_0198863546.png | Bin 18438 -> 34254 bytes docs/obs/umn/en-us_topic_0045853504.html | 2 +- docs/obs/umn/en-us_topic_0045853509.html | 2 +- docs/obs/umn/en-us_topic_0045853514.html | 6 +- docs/obs/umn/en-us_topic_0045853553.html | 2 +- docs/obs/umn/en-us_topic_0045853584.html | 2 +- docs/obs/umn/en-us_topic_0045853630.html | 6 +- docs/obs/umn/en-us_topic_0045853659.html | 16 +- docs/obs/umn/en-us_topic_0045853662.html | 5 +- docs/obs/umn/en-us_topic_0045853663.html | 17 +- docs/obs/umn/en-us_topic_0045853707.html | 8 +- docs/obs/umn/en-us_topic_0045853710.html | 2 +- docs/obs/umn/en-us_topic_0045853737.html | 2 +- docs/obs/umn/en-us_topic_0045853744.html | 8 +- docs/obs/umn/en-us_topic_0045853745.html | 13 +- docs/obs/umn/en-us_topic_0045853755.html | 32 +- docs/obs/umn/en-us_topic_0045853756.html | 12 +- docs/obs/umn/en-us_topic_0045853764.html | 12 +- docs/obs/umn/en-us_topic_0045853821.html | 6 +- docs/obs/umn/en-us_topic_0045853854.html | 16 +- docs/obs/umn/en-us_topic_0045853860.html | 6 +- docs/obs/umn/en-us_topic_0049066876.html | 4 +- docs/obs/umn/en-us_topic_0050937852.html | 25 +- docs/obs/umn/en-us_topic_0066036542.html | 16 +- docs/obs/umn/en-us_topic_0066088957.html | 10 +- docs/obs/umn/en-us_topic_0066088963.html | 2 +- docs/obs/umn/en-us_topic_0066088967.html | 22 +- docs/obs/umn/en-us_topic_0066176932.html | 6 +- docs/obs/umn/obs_03_0002.html | 2 +- docs/obs/umn/obs_03_0003.html | 20 +- docs/obs/umn/obs_03_0009.html | 4 +- docs/obs/umn/obs_03_0010.html | 2 +- docs/obs/umn/obs_03_0012.html | 25 +- docs/obs/umn/obs_03_0016.html | 2 +- docs/obs/umn/obs_03_0020.html | 11 +- docs/obs/umn/obs_03_0024.html | 2 +- docs/obs/umn/obs_03_0032.html | 2 +- docs/obs/umn/obs_03_0035.html | 36 +- docs/obs/umn/obs_03_0037.html | 2 +- docs/obs/umn/obs_03_0038.html | 2 +- docs/obs/umn/obs_03_0045.html | 4 +- docs/obs/umn/obs_03_0046.html | 4 +- docs/obs/umn/obs_03_0047.html | 2 +- docs/obs/umn/obs_03_0049.html | 4 +- docs/obs/umn/obs_03_0051.html | 2 +- docs/obs/umn/obs_03_0054.html | 25 +- docs/obs/umn/obs_03_0074.html | 2 +- docs/obs/umn/obs_03_0075.html | 14 +- docs/obs/umn/obs_03_0080.html | 8 +- docs/obs/umn/obs_03_0081.html | 14 +- docs/obs/umn/obs_03_0082.html | 17 + docs/obs/umn/obs_03_0083.html | 16 + docs/obs/umn/obs_03_0084.html | 88 + docs/obs/umn/obs_03_0086.html | 2 +- docs/obs/umn/obs_03_0088.html | 10 +- docs/obs/umn/obs_03_0096.html | 6 +- docs/obs/umn/obs_03_0100.html | 2 +- docs/obs/umn/obs_03_0109.html | 2 +- docs/obs/umn/obs_03_0110.html | 16 +- docs/obs/umn/obs_03_0114.html | 2 +- docs/obs/umn/obs_03_0115.html | 4 +- docs/obs/umn/obs_03_0118.html | 10 +- docs/obs/umn/obs_03_0120.html | 20 +- docs/obs/umn/obs_03_0121.html | 36 +- docs/obs/umn/obs_03_0122.html | 34 +- docs/obs/umn/obs_03_0123.html | 43 +- docs/obs/umn/obs_03_0127.html | 14 +- docs/obs/umn/obs_03_0130.html | 12 +- docs/obs/umn/obs_03_0131.html | 8 +- docs/obs/umn/obs_03_0132.html | 4 +- docs/obs/umn/obs_03_0136.html | 12 +- docs/obs/umn/obs_03_0141.html | 14 +- docs/obs/umn/obs_03_0144.html | 2 +- docs/obs/umn/obs_03_0150.html | 2 +- docs/obs/umn/obs_03_0201.html | 6 +- docs/obs/umn/obs_03_0204.html | 48 +- docs/obs/umn/obs_03_0207.html | 2 +- docs/obs/umn/obs_03_0300.html | 4 +- docs/obs/umn/obs_03_0301.html | 2 +- docs/obs/umn/obs_03_0304.html | 36 +- docs/obs/umn/obs_03_0306.html | 3 +- docs/obs/umn/obs_03_0307.html | 8 +- docs/obs/umn/obs_03_0308.html | 2 +- docs/obs/umn/obs_03_0309.html | 5 +- docs/obs/umn/obs_03_0310.html | 4 +- docs/obs/umn/obs_03_0312.html | 2 +- docs/obs/umn/obs_03_0313.html | 2 +- docs/obs/umn/obs_03_0314.html | 4 +- docs/obs/umn/obs_03_0316.html | 4 +- docs/obs/umn/obs_03_0317.html | 2 +- docs/obs/umn/obs_03_0318.html | 10 +- docs/obs/umn/obs_03_0319.html | 6 +- docs/obs/umn/obs_03_0320.html | 4 +- docs/obs/umn/obs_03_0322.html | 24 +- docs/obs/umn/obs_03_0325.html | 16 +- docs/obs/umn/obs_03_0326.html | 6 +- docs/obs/umn/obs_03_0327.html | 2 +- docs/obs/umn/obs_03_0329.html | 4 +- docs/obs/umn/obs_03_0331.html | 4 +- docs/obs/umn/obs_03_0333.html | 6 +- docs/obs/umn/obs_03_0335.html | 24 +- docs/obs/umn/obs_03_0338.html | 10 +- docs/obs/umn/obs_03_0341.html | 2 +- docs/obs/umn/obs_03_0342.html | 2 +- docs/obs/umn/obs_03_0346.html | 4 +- docs/obs/umn/obs_03_0347.html | 2 +- docs/obs/umn/obs_03_0348.html | 2 +- docs/obs/umn/obs_03_0350.html | 2 +- docs/obs/umn/obs_03_0402.html | 2 +- docs/obs/umn/obs_03_0407.html | 4 +- docs/obs/umn/obs_03_0413.html | 2 +- docs/obs/umn/obs_03_0414.html | 7 +- docs/obs/umn/obs_03_0416.html | 2 +- docs/obs/umn/obs_03_0417.html | 4 +- docs/obs/umn/obs_03_0421.html | 24 +- docs/obs/umn/obs_03_0425.html | 8 +- docs/obs/umn/obs_03_0431.html | 2 +- docs/obs/umn/obs_03_0434.html | 2 +- docs/obs/umn/obs_03_0439.html | 2 +- docs/obs/umn/obs_03_0441.html | 6 +- docs/obs/umn/obs_03_0443.html | 4 +- docs/obs/umn/obs_03_0444.html | 6 +- docs/obs/umn/obs_03_9999.html | 12 +- docs/obs/umn/obs_faq_0014.html | 2 +- docs/obs/umn/obs_faq_0021.html | 2 +- docs/obs/umn/obs_faq_0027.html | 4 +- docs/obs/umn/obs_faq_0029.html | 2 +- docs/obs/umn/obs_faq_0032.html | 4 +- docs/obs/umn/obs_faq_0037.html | 2 +- docs/obs/umn/obs_faq_0040.html | 2 +- docs/obs/umn/obs_faq_0041.html | 2 +- docs/obs/umn/obs_faq_0042.html | 2 +- docs/obs/umn/obs_faq_0043.html | 2 +- docs/obs/umn/obs_faq_0044.html | 2 +- docs/obs/umn/obs_faq_0045.html | 2 +- docs/obs/umn/obs_faq_0064.html | 2 +- docs/obs/umn/obs_faq_0100.html | 10 +- docs/obs/umn/obs_faq_0111.html | 2 +- docs/obs/umn/obs_faq_0134.html | 2 +- docs/obs/umn/obs_faq_0135.html | 2 +- docs/obs/umn/obs_faq_0136.html | 2 +- docs/obs/umn/obs_faq_0137.html | 2 +- docs/obs/umn/obs_faq_0138.html | 2 +- docs/obs/umn/obs_faq_0149.html | 11 + docs/obs/umn/obs_faq_0200.html | 12 +- docs/obs/umn/obs_faq_0400.html | 2 +- docs/obs/umn/obs_faq_0500.html | 4 +- docs/obs/umn/obs_faq_0700.html | 2 +- docs/obs/umn/obs_faq_0800.html | 2 +- docs/obs/umn/obs_faq_0900.html | 2 +- docs/obs/umn/obs_faq_10000.html | 4 +- docs/obs/umn/obs_faq_1008.html | 15 + docs/obs/umn/obs_faq_1100.html | 2 +- docs/obs/umn/obs_faq_1200.html | 4 +- 160 files changed, 4273 insertions(+), 1375 deletions(-) create mode 100644 docs/obs/umn/en-us_image_0000001730497813.png rename docs/obs/umn/{en-us_image_0145846362.png => en-us_image_0000001801955289.png} (100%) delete mode 100644 docs/obs/umn/en-us_image_0145847198.png delete mode 100644 docs/obs/umn/en-us_image_0154344913.png create mode 100644 docs/obs/umn/obs_03_0082.html create mode 100644 docs/obs/umn/obs_03_0083.html create mode 100644 docs/obs/umn/obs_03_0084.html create mode 100644 docs/obs/umn/obs_faq_0149.html create mode 100644 docs/obs/umn/obs_faq_1008.html diff --git a/docs/obs/umn/ALL_META.TXT.json b/docs/obs/umn/ALL_META.TXT.json index 32f1916ad..b10b4132d 100644 --- a/docs/obs/umn/ALL_META.TXT.json +++ b/docs/obs/umn/ALL_META.TXT.json @@ -1,2621 +1,5344 @@ [ + { + "dockw":"User Guide" + }, { "uri":"en-us_topic_0045853692.html", + "node_id":"en-us_topic_0045853692.xml", "product_code":"obs", "code":"1", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Service Overview", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Service Overview", "githuburl":"" }, { "uri":"en-us_topic_0045853681.html", + "node_id":"en-us_topic_0045853681.xml", "product_code":"obs", "code":"2", "des":"Object Storage Service (OBS) is a scalable service that provides secure, reliable, and cost-effective cloud storage for massive amounts of data. On OBS, you can easily ma", "doc_type":"usermanual", "kw":"object storage,cloud storage,object storage service,huawei cloud obs,storage classes,object storage ", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"About OBS", "githuburl":"" }, { "uri":"obs_03_0201.html", + "node_id":"obs_03_0201.xml", "product_code":"obs", "code":"3", - "des":"In this information era, it becomes increasingly difficult for conventional on-premises storage servers to deal with the fast growing data of enterprises. Table 1 compare", + "des":"In this information era, it becomes increasingly difficult for conventional on-premises storage servers to deal with the fast-growing data of enterprises. Table 1 compare", "doc_type":"usermanual", "kw":"object storage advantages,OBS advantages,on-premises storage,OBS reliability architecture,Advantages", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Advantages", "githuburl":"" }, { "uri":"obs_03_0202.html", + "node_id":"obs_03_0202.xml", "product_code":"obs", "code":"4", "des":"OBS is built for you to store and retrieve any amount of data anytime, anywhere. It is a good data storage choice for mobile, web, and application developers. OBS also re", "doc_type":"usermanual", "kw":"object storage use cases,OBS use cases,OBS application scenarios,Application Scenarios,Service Overv", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Application Scenarios", "githuburl":"" }, { "uri":"obs_03_0045.html", + "node_id":"obs_03_0045.xml", "product_code":"obs", "code":"5", "des":"You can use Identity and Access Management (IAM) to manage OBS permissions and control access to your resources. IAM provides identity authentication, permissions managem", "doc_type":"usermanual", "kw":"object storage permissions,obs permission management,obs system-defined permissions,Permissions Mana", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Permissions Management", "githuburl":"" }, { "uri":"obs_03_0203.html", + "node_id":"obs_03_0203.xml", "product_code":"obs", "code":"6", "des":"You can use the following tools to access and manage OBS resources:", "doc_type":"usermanual", "kw":"Using OBS,Service Overview,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Using OBS", "githuburl":"" }, { "uri":"obs_03_0204.html", + "node_id":"obs_03_0204.xml", "product_code":"obs", "code":"7", "des":"OBS can serve as a storage resource pool for other cloud services such as Relational Database Service (RDS) and Cloud Trace Service (CTS).", "doc_type":"usermanual", "kw":"object storage-related services,relationship between OBS and other services,Related Services,Service", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Related Services", "githuburl":"" }, { "uri":"obs_03_0205.html", + "node_id":"obs_03_0205.xml", "product_code":"obs", "code":"8", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Basic Concepts", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Basic Concepts", "githuburl":"" }, { "uri":"obs_03_0206.html", + "node_id":"obs_03_0206.xml", "product_code":"obs", "code":"9", "des":"Objects are basic units stored in OBS. An object contains both data and the metadata that describes data attributes. Data uploaded to OBS is stored in buckets as objects.", "doc_type":"usermanual", "kw":"objects,object metadata,object key,system metadata,custom metadata,Objects,Basic Concepts,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Objects", "githuburl":"" }, { "uri":"obs_03_0207.html", + "node_id":"obs_03_0207.xml", "product_code":"obs", "code":"10", "des":"Buckets are containers for storing objects. OBS provides flat storage in the form of buckets and objects. Unlike the conventional multi-layer directory structure of file ", "doc_type":"usermanual", "kw":"buckets,storage containers,flat storage,objects and buckets,storage container,Buckets,Basic Concepts", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Buckets", "githuburl":"" }, { "uri":"obs_03_0150.html", + "node_id":"obs_03_0150.xml", "product_code":"obs", "code":"11", - "des":"Parallel File System (PFS), a sub-product of OBS, is a high-performance file system, with access latency in milliseconds. PFS can support a bandwidth performance up to th", + "des":"Parallel File System (PFS) is a high-performance semantic file system provided by OBS. It features access latency in milliseconds, TB/s-level bandwidth, and millions of I", "doc_type":"usermanual", "kw":"parallel file systems,POSIX,Parallel File System,Basic Concepts,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Parallel File System", "githuburl":"" }, { "uri":"obs_03_0208.html", + "node_id":"obs_03_0208.xml", "product_code":"obs", "code":"12", "des":"OBS uses an access key ID (AK) and secret access key (SK) to authenticate the identity of a requester. When you use OBS APIs for secondary development and use the AK and ", "doc_type":"usermanual", "kw":"access key ID,secret access key,OBS authentication,access keys,Access Keys (AK/SK),Basic Concepts,Us", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Access Keys (AK/SK)", "githuburl":"" }, { "uri":"obs_03_0152.html", + "node_id":"obs_03_0152.xml", "product_code":"obs", "code":"13", "des":"Endpoint: OBS provides an endpoint for each region. An endpoint is considered a domain name to access OBS in a region and is used to process requests of that region. For ", "doc_type":"usermanual", "kw":"endpoints,bucket domain name,bucket domain names,Endpoints and Domain Names,Basic Concepts,User Guid", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Endpoints and Domain Names", "githuburl":"" }, { "uri":"obs_03_0148.html", + "node_id":"obs_03_0148.xml", "product_code":"obs", "code":"14", "des":"A region and availability zone (AZ) identify the location of a data center. You can create resources in a specific region and AZ.A region is a physical data center. Each ", "doc_type":"usermanual", "kw":"regions,AZs,availability zone,Region and AZ,Basic Concepts,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Region and AZ", "githuburl":"" }, { "uri":"obs_03_0300.html", + "node_id":"obs_03_0300.xml", "product_code":"obs", "code":"15", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"OBS Console Operation Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"OBS Console Operation Guide", "githuburl":"" }, { "uri":"obs_03_0054.html", + "node_id":"obs_03_0054.xml", "product_code":"obs", "code":"16", "des":"Table 1 lists functions provided by OBS Console.", "doc_type":"usermanual", "kw":"OBS Console features,OBS Console functions,Console Function Overview,OBS Console Operation Guide,Use", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Console Function Overview", "githuburl":"" }, { "uri":"obs_03_0301.html", + "node_id":"obs_03_0301.xml", "product_code":"obs", "code":"17", - "des":"Table 1 lists the web browser versions supported by OBS Console.", + "des":"Table 1 lists the web browser versions compatible with OBS Console.", "doc_type":"usermanual", "kw":"browsers for OBS Console,browser compatibility,Restrictions,OBS Console Operation Guide,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Restrictions", "githuburl":"" }, { "uri":"obs_03_0302.html", + "node_id":"obs_03_0302.xml", "product_code":"obs", "code":"18", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Getting Started", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Getting Started", "githuburl":"" }, { "uri":"obs_03_0303.html", + "node_id":"obs_03_0303.xml", "product_code":"obs", "code":"19", "des":"OBS basic operations include bucket creation, object upload and object download.The follow-up sections describe how to complete the tasks illustrated in Figure 1.", "doc_type":"usermanual", "kw":"Process Description,Getting Started,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Process Description", "githuburl":"" }, { "uri":"obs_03_0304.html", + "node_id":"obs_03_0304.xml", "product_code":"obs", "code":"20", "des":"If your cloud service account does not need individual IAM users, then you may skip this section. Your permissions to use OBS functions are not affected.If IAM users are ", "doc_type":"usermanual", "kw":"Configuring User Permissions,Getting Started,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring User Permissions", "githuburl":"" }, { "uri":"obs_03_0306.html", + "node_id":"obs_03_0306.xml", "product_code":"obs", "code":"21", "des":"This section describes how to create a bucket on OBS Console. A bucket is a container that stores objects in OBS. Before you can store data in OBS, you need to create a b", "doc_type":"usermanual", "kw":"bucket creation,Creating a Bucket,Getting Started,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Creating a Bucket", "githuburl":"" }, { "uri":"obs_03_0307.html", + "node_id":"obs_03_0307.xml", "product_code":"obs", "code":"22", "des":"This section describes how to upload local files to OBS over the Internet. These files can be texts, images, videos, or any other type of files.OBS Console allows you to ", "doc_type":"usermanual", "kw":"file upload,object upload,object upload restrictions,file upload limitations,Uploading an Object,Get", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Uploading an Object", "githuburl":"" }, { "uri":"obs_03_0308.html", + "node_id":"obs_03_0308.xml", "product_code":"obs", "code":"23", "des":"You can download files from OBS Console to your local computer.Objects in the Cold storage class can be downloaded only when they are in the Restored state.In the Downloa", "doc_type":"usermanual", "kw":"file download,object download,Downloading an Object,Getting Started,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Downloading an Object", "githuburl":"" }, { "uri":"obs_03_0309.html", + "node_id":"obs_03_0309.xml", "product_code":"obs", "code":"24", "des":"You can delete unnecessary files one by one or in a batch on OBS Console to save space and money.You can select multiple files and click Delete above the file list to bat", "doc_type":"usermanual", "kw":"file deletion,object deletion,Deleting an Object,Getting Started,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Deleting an Object", "githuburl":"" }, { "uri":"obs_03_0310.html", + "node_id":"obs_03_0310.xml", "product_code":"obs", "code":"25", "des":"You can delete unwanted buckets on OBS Console to free up the quota of buckets.All objects in the bucket have been permanently deleted. A bucket must be emptied before it", "doc_type":"usermanual", "kw":"bucket deletion,bucket delete,Deleting a Bucket,Getting Started,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Deleting a Bucket", "githuburl":"" }, { "uri":"en-us_topic_0050937852.html", + "node_id":"en-us_topic_0050937852.xml", "product_code":"obs", "code":"26", - "des":"OBS supports tiered storage classes at the bucket level and object level.OBS provides the following storage classes: Standard, Warm, and Cold.Different storage classes me", + "des":"OBS supports tiered storage classes at the bucket level and object level.OBS provides the following storage classes: Standard, Warm, and Cold.These storage classes can me", "doc_type":"usermanual", "kw":"Storage Classes Overview,OBS Console Operation Guide,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Storage Classes Overview", "githuburl":"" }, { "uri":"obs_03_0311.html", + "node_id":"obs_03_0311.xml", "product_code":"obs", "code":"27", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Managing Buckets", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Managing Buckets", "githuburl":"" }, { "uri":"en-us_topic_0045853662.html", + "node_id":"en-us_topic_0045853662.xml", "product_code":"obs", "code":"28", "des":"A bucket is a container that stores objects in OBS. Before you store data in OBS, you need to create a bucket.An account can create a maximum of 100 buckets and parallel ", "doc_type":"usermanual", "kw":"Creating a Bucket,Managing Buckets,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Creating a Bucket", "githuburl":"" }, { "uri":"obs_03_0312.html", + "node_id":"obs_03_0312.xml", "product_code":"obs", "code":"29", "des":"On OBS Console, you can view details about a bucket.The statistics of Used Capacity and Objects are not real-time data, which are usually updated 15 minutes in delay.", "doc_type":"usermanual", "kw":"bucket details,basic bucket information,Viewing Basic Information of a Bucket,Managing Buckets,User ", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Viewing Basic Information of a Bucket", "githuburl":"" }, { "uri":"obs_03_0313.html", + "node_id":"obs_03_0313.xml", "product_code":"obs", "code":"30", - "des":"You can search for a bucket by characters contained in its name.Currently, searching for buckets by tag is not supported.Buckets that meet the search criteria are display", + "des":"You can search for a bucket by characters contained in its name.Currently, bucket search by tag is not supported.Buckets that meet the search criteria are displayed in th", "doc_type":"usermanual", "kw":"bucket search,Searching for a Bucket,Managing Buckets,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Searching for a Bucket", "githuburl":"" }, { "uri":"obs_03_0314.html", + "node_id":"obs_03_0314.xml", "product_code":"obs", "code":"31", "des":"You can delete unwanted buckets on OBS Console to free up the quota of buckets.All objects in the bucket have been permanently deleted. A bucket must be emptied before it", "doc_type":"usermanual", "kw":"bucket delete,Deleting a Bucket,Managing Buckets,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Deleting a Bucket", "githuburl":"" }, { "uri":"obs_03_0315.html", + "node_id":"obs_03_0315.xml", "product_code":"obs", "code":"32", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Managing Objects", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Managing Objects", "githuburl":"" }, { "uri":"obs_03_0316.html", + "node_id":"obs_03_0316.xml", "product_code":"obs", "code":"33", "des":"This section describes how to create a folder on OBS Console. Folders facilitate data management in OBS.Unlike a file system, OBS does not involve the concepts of file an", "doc_type":"usermanual", "kw":"folder creation,folder create,Creating a Folder,Managing Objects,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Creating a Folder", "githuburl":"" }, { "uri":"en-us_topic_0045853663.html", + "node_id":"en-us_topic_0045853663.xml", "product_code":"obs", "code":"34", "des":"This section describes how to upload local files to OBS over the Internet. These files can be texts, images, videos, or any other type of files.OBS Console allows you to ", "doc_type":"usermanual", "kw":"file upload limitations,object upload constraints,object upload restrictions,object upload,Uploading", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Uploading an Object", "githuburl":"" }, { "uri":"obs_03_0317.html", + "node_id":"obs_03_0317.xml", "product_code":"obs", "code":"35", - "des":"You can download files from OBS Console to the system default path or a custom download path of your local computer.Objects in the Cold storage class can be downloaded on", + "des":"You can download files from OBS Console to the system default path or a custom download path on your local computer.Objects in the Cold storage class can be downloaded on", "doc_type":"usermanual", "kw":"object download,object downloading,Downloading an Object,Managing Objects,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Downloading an Object", "githuburl":"" }, { "uri":"obs_03_0046.html", + "node_id":"obs_03_0046.xml", "product_code":"obs", "code":"36", "des":"You can share temporary URLs of your objects with others for them to access your objects stored in OBS.File sharing is temporary. All sharing URLs are only valid for a li", "doc_type":"usermanual", "kw":"file sharing,file sharing limitations,file sharing restrictions,object sharing,object sharing limita", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Sharing an Object", "githuburl":"" }, { "uri":"obs_03_0318.html", + "node_id":"obs_03_0318.xml", "product_code":"obs", "code":"37", - "des":"This section describes how to search for a file or folder by name prefix on OBS Console.In the root directory of the bucket, files and folders whose name starts with the ", + "des":"On OBS Console, you can search for files or folders by prefix.In the root directory of the bucket, files and folders whose name starts with the specified prefix are displ", "doc_type":"usermanual", "kw":"file search,object search,folder search,Searching for an Object or Folder,Managing Objects,User Guid", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Searching for an Object or Folder", "githuburl":"" }, { "uri":"obs_03_0319.html", + "node_id":"obs_03_0319.xml", "product_code":"obs", "code":"38", "des":"You can grant anonymous users the read permission for an object so they can access the object using the shared object URL.Anonymous users have the read permission for the", "doc_type":"usermanual", "kw":"object access using URL,URL-based access,URL-based object access,Accessing an Object Using Its URL,M", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Accessing an Object Using Its URL", "githuburl":"" }, { "uri":"obs_03_0320.html", + "node_id":"obs_03_0320.xml", "product_code":"obs", "code":"39", - "des":"You must restore a Cold object before you can operate it, including download, access using a URL, as well as ACL and metadata settings.You cannot suspend or delete the re", + "des":"You must restore a Cold object before you can download it, access it with a URL, or configure its ACL or metadata.If a Cold object is being restored, its restore task can", "doc_type":"usermanual", "kw":"archived object restore,file restore,archived file restore,object restore,Restoring Objects from the", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Restoring Objects from the Cold Storage", "githuburl":"" }, { "uri":"en-us_topic_0045853756.html", + "node_id":"en-us_topic_0045853756.xml", "product_code":"obs", "code":"40", "des":"On OBS Console, you can manually delete unneeded files or folders to release space and reduce costs.Alternatively, you can configure lifecycle rules to periodically, auto", "doc_type":"usermanual", "kw":"object version deletion,object deletion,Deleting an Object or Folder,Managing Objects,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Deleting an Object or Folder", "githuburl":"" }, { "uri":"en-us_topic_0066176932.html", + "node_id":"en-us_topic_0066176932.xml", "product_code":"obs", "code":"41", "des":"If a bucket has versioning enabled, you can recover a deleted object by undeleting it.Object Deletion with Versioning EnabledWhen versioning is enabled for a bucket, OBS ", "doc_type":"usermanual", "kw":"file undelete,object undelete,Undeleting an Object,Managing Objects,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Undeleting an Object", "githuburl":"" }, { "uri":"en-us_topic_0045853514.html", + "node_id":"en-us_topic_0045853514.xml", "product_code":"obs", "code":"42", - "des":"Data can be uploaded to OBS using multipart uploads. Fragments are generated, if a multipart upload fails because of the following reasons (included but not limited to):T", + "des":"Data can be uploaded to OBS using multipart uploads. There will be fragments generated, if a multipart upload fails because of the following causes (included but not limi", "doc_type":"usermanual", "kw":"fragment management,fragments,Managing Fragments,Managing Objects,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Managing Fragments", "githuburl":"" }, { "uri":"obs_03_0321.html", + "node_id":"obs_03_0321.xml", "product_code":"obs", "code":"43", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Server-Side Encryption", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Server-Side Encryption", "githuburl":"" }, { "uri":"en-us_topic_0066036553.html", + "node_id":"en-us_topic_0066036553.xml", "product_code":"obs", "code":"44", "des":"After server-side encryption is enabled, objects to be uploaded will be encrypted and stored on the server. When objects are downloaded, they will be decrypted on the ser", "doc_type":"usermanual", "kw":"Server-Side Encryption Overview,Server-Side Encryption,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Server-Side Encryption Overview", "githuburl":"" }, { "uri":"obs_03_0088.html", + "node_id":"obs_03_0088.xml", "product_code":"obs", "code":"45", - "des":"OBS allows you to configure default encryption for a bucket. After the configuration, objects uploaded to this bucket are automatically encrypted using the specified KMS ", + "des":"OBS allows you to configure default encryption for a bucket. After the default encryption is enabled for the bucket, objects uploaded to this bucket are automatically enc", "doc_type":"usermanual", "kw":"Bucket Default Encryption,Server-Side Encryption,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Bucket Default Encryption", "githuburl":"" }, { "uri":"obs_03_0322.html", + "node_id":"obs_03_0322.xml", "product_code":"obs", "code":"46", "des":"OBS allows you to encrypt objects with server-side encryption so that the objects can be securely stored in OBS.In a bucket with server-side encryption disabled, objects ", "doc_type":"usermanual", "kw":"server-side file encryption,server-side object encryption,Uploading an Object in Server-Side Encrypt", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Uploading an Object in Server-Side Encryption Mode", "githuburl":"" }, { "uri":"obs_03_0323.html", + "node_id":"obs_03_0323.xml", "product_code":"obs", "code":"47", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Object Metadata", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Object Metadata", "githuburl":"" }, { "uri":"en-us_topic_0049066876.html", + "node_id":"en-us_topic_0049066876.xml", "product_code":"obs", "code":"48", - "des":"Object metadata is a set of name-value pairs that are part of object management.Currently, only the metadata defined by the system is supported.The metadata defined by th", + "des":"Object metadata is a set of name-value pairs that describe the object and is used for object management.Currently, only the metadata defined by the system is supported.Th", "doc_type":"usermanual", "kw":"Object Metadata Overview,Object Metadata,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Object Metadata Overview", "githuburl":"" }, { "uri":"obs_03_0102.html", + "node_id":"obs_03_0102.xml", "product_code":"obs", "code":"49", "des":"When an object is uploaded to OBS, the system automatically matches the value of Content-Type based on the file name extension of the object. When you access an object th", "doc_type":"usermanual", "kw":"About Object Metadata Content-Type,Object Metadata,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"About Object Metadata Content-Type", "githuburl":"" }, { "uri":"obs_03_0324.html", + "node_id":"obs_03_0324.xml", "product_code":"obs", "code":"50", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"object metadata configuration,object metadata,Configuring Object Metadata,Object Metadata,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring Object Metadata", "githuburl":"" }, { - "uri":"obs_03_0086.html", + "uri":"obs_03_0082.html", + "node_id":"obs_03_0082.xml", "product_code":"obs", "code":"51", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", - "kw":"Permission Control", - "title":"Permission Control", + "kw":"Bucket Inventories", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], + "title":"Bucket Inventories", + "githuburl":"" + }, + { + "uri":"obs_03_0083.html", + "node_id":"obs_03_0083.xml", + "product_code":"obs", + "code":"52", + "des":"The bucket inventory function periodically generates lists of metadata information of objects in a bucket. Inventories help you better understand object statuses in the b", + "doc_type":"usermanual", + "kw":"Bucket Inventory Overview,Bucket Inventories,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], + "title":"Bucket Inventory Overview", + "githuburl":"" + }, + { + "uri":"obs_03_0084.html", + "node_id":"obs_03_0084.xml", + "product_code":"obs", + "code":"53", + "des":"OBS then automatically creates a bucket policy on the destination bucket to grant OBS permission to write inventory files to the bucket.", + "doc_type":"usermanual", + "kw":"bucket inventory creation,bucket inventories,bucket inventory,Configuring a Bucket Inventory,Bucket ", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], + "title":"Configuring a Bucket Inventory", + "githuburl":"" + }, + { + "uri":"obs_03_0086.html", + "node_id":"obs_03_0086.xml", + "product_code":"obs", + "code":"54", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Permissions Control", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], + "title":"Permissions Control", "githuburl":"" }, { "uri":"obs_03_0047.html", + "node_id":"obs_03_0047.xml", "product_code":"obs", - "code":"52", + "code":"55", "des":"OBS supports the following permission control mechanisms:IAM policies: IAM policies define the actions that can be performed on your cloud resources. In other words, IAM ", "doc_type":"usermanual", - "kw":"Overview,Permission Control,User Guide", + "kw":"Overview,Permissions Control,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Overview", "githuburl":"" }, { "uri":"obs_03_0109.html", + "node_id":"obs_03_0109.xml", "product_code":"obs", - "code":"53", + "code":"56", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Permission Control Mechanisms", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Permission Control Mechanisms", "githuburl":"" }, { "uri":"obs_03_0110.html", + "node_id":"obs_03_0110.xml", "product_code":"obs", - "code":"54", + "code":"57", "des":"You can create IAM users under a registered cloud service account, and then use IAM policies to control users' access permissions to cloud resources.IAM policies define t", "doc_type":"usermanual", "kw":"IAM Policies,Permission Control Mechanisms,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"IAM Policies", "githuburl":"" }, { "uri":"en-us_topic_0045853745.html", + "node_id":"en-us_topic_0045853745.xml", "product_code":"obs", - "code":"55", + "code":"58", "des":"The owner of a bucket is the account that created the bucket. If the bucket is created by an IAM user under the account, the bucket owner is the account instead of the IA", "doc_type":"usermanual", "kw":"Bucket Policies and Object Policies,Permission Control Mechanisms,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Bucket Policies and Object Policies", "githuburl":"" }, { "uri":"en-us_topic_0066088967.html", + "node_id":"en-us_topic_0066088967.xml", "product_code":"obs", - "code":"56", + "code":"59", "des":"Access control lists (ACLs) enable you to manage access to buckets and objects, and define grantees and their granted access permissions. Each bucket and object has its o", "doc_type":"usermanual", "kw":"Bucket ACLs and Object ACLs,Permission Control Mechanisms,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Bucket ACLs and Object ACLs", "githuburl":"" }, { "uri":"obs_03_0325.html", + "node_id":"obs_03_0325.xml", "product_code":"obs", - "code":"57", - "des":"Bucket ACLs are used to control basic read and write access permissions for buckets. Custom settings of bucket policies support more actions that can be performed on buck", + "code":"60", + "des":"Bucket ACLs are used to control basic read and write access to buckets. Custom settings of bucket policies support more actions that can be performed on buckets. Bucket p", "doc_type":"usermanual", "kw":"Relationship Between a Bucket ACL and a Bucket Policy,Permission Control Mechanisms,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Relationship Between a Bucket ACL and a Bucket Policy", "githuburl":"" }, { "uri":"obs_03_0114.html", + "node_id":"obs_03_0114.xml", "product_code":"obs", - "code":"58", - "des":"Based on the least-privilege principle, decisions default to deny, and an explicit deny statement always takes precedence over an allow statement. For example, IAM polici", + "code":"61", + "des":"Based on the principle of least privilege, the default access control result is always deny, and an explicit deny statement always take precedence over an allow statement", "doc_type":"usermanual", "kw":"How Does Authorization Work When Multiple Access Control Mechanisms Co-Exist?,Permission Control Mec", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"How Does Authorization Work When Multiple Access Control Mechanisms Co-Exist?", "githuburl":"" }, { "uri":"obs_03_0074.html", + "node_id":"obs_03_0074.xml", "product_code":"obs", - "code":"59", + "code":"62", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Bucket Policy Parameters", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Bucket Policy Parameters", "githuburl":"" }, { "uri":"obs_03_0115.html", + "node_id":"obs_03_0115.xml", "product_code":"obs", - "code":"60", - "des":"A bucket policy can either allow or deny the access requests that match the configuration.Allow: The policy allows the matched requests.Deny: The policy denies the matche", + "code":"63", + "des":"A bucket policy can either allow or deny requests.Allow: The policy allows the matched requests.Deny: The policy denies the matched requests.When a bucket policy contains", "doc_type":"usermanual", "kw":"Effect,Bucket Policy Parameters,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Effect", "githuburl":"" }, { "uri":"obs_03_0049.html", + "node_id":"obs_03_0049.xml", "product_code":"obs", - "code":"61", - "des":"The principals indicate the users which the bucket policies apply to. These users can be accounts, federated users or federated user groups, and IAM users. Target users c", + "code":"64", + "des":"The principals indicate the users bucket policies apply to. These users can be accounts, federated users or federated user groups, and IAM users. Target users can be spec", "doc_type":"usermanual", "kw":"Principals,Bucket Policy Parameters,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Principals", "githuburl":"" }, { "uri":"obs_03_0118.html", + "node_id":"obs_03_0118.xml", "product_code":"obs", - "code":"62", - "des":"The resource can be the current entire bucket, an object, or a set of objects in the bucket.Resources can be specified in either of the following ways:Include: The policy", + "code":"65", + "des":"The resources a bucket policy is applied to can be the current entire bucket or objects in the bucket.Resources can be specified in either of the following ways:Include: ", "doc_type":"usermanual", "kw":"Resources,Bucket Policy Parameters,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Resources", "githuburl":"" }, { "uri":"obs_03_0051.html", + "node_id":"obs_03_0051.xml", "product_code":"obs", - "code":"63", + "code":"66", "des":"Actions are related to resources. When the resource is the current bucket, bucket-related actions should be configured in a bucket policy. When objects are specified as r", "doc_type":"usermanual", "kw":"Actions,Bucket Policy Parameters,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Actions", "githuburl":"" }, { "uri":"obs_03_0120.html", + "node_id":"obs_03_0120.xml", "product_code":"obs", - "code":"64", - "des":"In addition to the effect, principal, resources, and actions, you can also specify the conditions under which the bucket policy takes effect. A bucket policy takes effect", + "code":"67", + "des":"In addition to effect, principals, resources, and actions, you can specify conditions for a bucket policy. A bucket policy takes effect only when its condition expression", "doc_type":"usermanual", "kw":"Conditions,Bucket Policy Parameters,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Conditions", "githuburl":"" }, { "uri":"obs_03_0144.html", + "node_id":"obs_03_0144.xml", "product_code":"obs", - "code":"65", + "code":"68", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Configuring IAM Policies", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring IAM Policies", "githuburl":"" }, { "uri":"obs_03_0122.html", + "node_id":"obs_03_0122.xml", "product_code":"obs", - "code":"66", + "code":"69", "des":"A user group is a collection of users. By assigning permissions to a user group, you assign permissions to the users in this group. After you create an IAM user, add it t", "doc_type":"usermanual", "kw":"Creating an IAM User and Granting OBS Permissions,Configuring IAM Policies,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Creating an IAM User and Granting OBS Permissions", "githuburl":"" }, { "uri":"obs_03_0121.html", + "node_id":"obs_03_0121.xml", "product_code":"obs", - "code":"67", + "code":"70", "des":"Custom policies can be created to supplement the system-defined policies of OBS.For details, see Creating a Custom Policy. The following provides examples of common OBS c", "doc_type":"usermanual", "kw":"custom policies,OBS custom policies,Configuring Fine-Grained Policies,Configuring IAM Policies,User ", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring Fine-Grained Policies", "githuburl":"" }, { "uri":"en-us_topic_0045853584.html", + "node_id":"en-us_topic_0045853584.xml", "product_code":"obs", - "code":"68", + "code":"71", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Configuring a Bucket Policy", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring a Bucket Policy", "githuburl":"" }, { "uri":"obs_03_0142.html", + "node_id":"obs_03_0142.xml", "product_code":"obs", - "code":"69", + "code":"72", "des":"For standard bucket policy, OBS offers three options, namely the Private, Public Read, and Public Read and Write policies. These policies are pre-defined and can be appli", "doc_type":"usermanual", "kw":"Configuring a Standard Bucket Policy,Configuring a Bucket Policy,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring a Standard Bucket Policy", "githuburl":"" }, { "uri":"obs_03_0123.html", + "node_id":"obs_03_0123.xml", "product_code":"obs", - "code":"70", + "code":"73", "des":"If you want to grant special permissions to specific users, you can configure custom bucket policies. If a standard bucket policy conflicts with a custom bucket policy, t", "doc_type":"usermanual", "kw":"Configuring a Custom Bucket Policy (Common Mode),Configuring a Bucket Policy,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring a Custom Bucket Policy (Common Mode)", "githuburl":"" }, { "uri":"obs_03_0141.html", + "node_id":"obs_03_0141.xml", "product_code":"obs", - "code":"71", + "code":"74", "des":"You can configure a custom bucket policy by coding. The size of a custom bucket policy cannot exceed 20 KB.On the right of Custom Bucket Policies, select Coding mode to c", "doc_type":"usermanual", "kw":"Configuring a Custom Bucket Policy (Coding Mode),Configuring a Bucket Policy,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring a Custom Bucket Policy (Coding Mode)", "githuburl":"" }, { "uri":"obs_03_0075.html", + "node_id":"obs_03_0075.xml", "product_code":"obs", - "code":"72", + "code":"75", "des":"Object policies are applied to the objects in a bucket. With an object policy, you can configure conditions and actions for objects in a bucket.Read-only: The authorized ", "doc_type":"usermanual", - "kw":"object policies,object policy configuration,Configuring an Object Policy,Permission Control,User Gui", + "kw":"object policies,object policy configuration,Configuring an Object Policy,Permissions Control,User Gu", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring an Object Policy", "githuburl":"" }, { "uri":"obs_03_0326.html", + "node_id":"obs_03_0326.xml", "product_code":"obs", - "code":"73", + "code":"76", "des":"You are the bucket owner or you have the permission to write the bucket ACL.Enter an account ID or account name and specify ACL permissions for the account. You can obtai", "doc_type":"usermanual", - "kw":"bucket ACL,bucket ACL configuration,Configuring a Bucket ACL,Permission Control,User Guide", + "kw":"bucket ACL,bucket ACL configuration,Configuring a Bucket ACL,Permissions Control,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring a Bucket ACL", "githuburl":"" }, { "uri":"en-us_topic_0045853821.html", + "node_id":"en-us_topic_0045853821.xml", "product_code":"obs", - "code":"74", + "code":"77", "des":"You are the object owner or you have the permission to write the object ACL.An object owner is the account that uploads the object, but may not be the owner of the bucket", "doc_type":"usermanual", - "kw":"object ACL,object ACL configuration,Configuring an Object ACL,Permission Control,User Guide", + "kw":"object ACL,object ACL configuration,Configuring an Object ACL,Permissions Control,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring an Object ACL", "githuburl":"" }, { "uri":"obs_03_0127.html", + "node_id":"obs_03_0127.xml", "product_code":"obs", - "code":"75", + "code":"78", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Application Cases", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Application Cases", "githuburl":"" }, { "uri":"obs_03_0080.html", + "node_id":"obs_03_0080.xml", "product_code":"obs", - "code":"76", + "code":"79", "des":"Create an IAM user under in an account. The IAM user has no permission to any resource before it is added to any user group. The bucket owner (root account) or other acco", "doc_type":"usermanual", - "kw":"Granting an IAM User with the Operation Permissions for a Specified Bucket,Application Cases,User Gu", - "title":"Granting an IAM User with the Operation Permissions for a Specified Bucket", + "kw":"Granting an IAM User Permissions to Operate a Specific Bucket,Application Cases,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], + "title":"Granting an IAM User Permissions to Operate a Specific Bucket", "githuburl":"" }, { "uri":"obs_03_0081.html", + "node_id":"obs_03_0081.xml", "product_code":"obs", - "code":"77", + "code":"80", "des":"The bucket owner (root account) or other accounts and IAM users, who have the permission to set bucket policies, can configure bucket policies to grant the bucket operati", "doc_type":"usermanual", - "kw":"Granting Other Accounts with the Operation Permissions for a Specified Bucket,Application Cases,User", - "title":"Granting Other Accounts with the Operation Permissions for a Specified Bucket", + "kw":"Granting Other Accounts Permissions to Operate a Specific Bucket,Application Cases,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], + "title":"Granting Other Accounts Permissions to Operate a Specific Bucket", "githuburl":"" }, { "uri":"obs_03_0130.html", + "node_id":"obs_03_0130.xml", "product_code":"obs", - "code":"78", - "des":"You can configure a bucket policy to authorize a specified address the permission to access the bucket. This example shows how to deny a client access whose source IP add", + "code":"81", + "des":"You can configure a bucket policy to restrict access to a bucket for specific addresses. This example describes how to deny access from clients whose IP address is in the", "doc_type":"usermanual", - "kw":"Restricting Bucket Access to a Specified Address,Application Cases,User Guide", - "title":"Restricting Bucket Access to a Specified Address", + "kw":"Restricting Access to a Bucket for Specific Addresses,Application Cases,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], + "title":"Restricting Access to a Bucket for Specific Addresses", "githuburl":"" }, { "uri":"obs_03_0131.html", + "node_id":"obs_03_0131.xml", "product_code":"obs", - "code":"79", + "code":"82", "des":"You can configure the bucket policy to limit the time when objects in a bucket are accessible. In the following example, the access time window is from 2019-03-26T12:00:0", "doc_type":"usermanual", - "kw":"Configuring the Start Time and End Time of Access to Objects in a Bucket,Application Cases,User Guid", - "title":"Configuring the Start Time and End Time of Access to Objects in a Bucket", + "kw":"Limiting the Time When Objects in a Bucket Are Accessible,Application Cases,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], + "title":"Limiting the Time When Objects in a Bucket Are Accessible", "githuburl":"" }, { "uri":"obs_03_0132.html", + "node_id":"obs_03_0132.xml", "product_code":"obs", - "code":"80", + "code":"83", "des":"An enterprise stores a large volume of map data in OBS, and offers the data for public query. This enterprise sets a read permission for anonymous users, and provides the", "doc_type":"usermanual", - "kw":"Granting Object Access Permissions to Anonymous Users,Application Cases,User Guide", - "title":"Granting Object Access Permissions to Anonymous Users", + "kw":"Granting Anonymous Users Permission to Access Objects,Application Cases,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], + "title":"Granting Anonymous Users Permission to Access Objects", "githuburl":"" }, { "uri":"obs_03_0096.html", + "node_id":"obs_03_0096.xml", "product_code":"obs", - "code":"81", + "code":"84", "des":"If all objects in a folder need to be accessible to anonymous users, you can configure a bucket policy or an object policy to grant anonymous users the permission to acce", "doc_type":"usermanual", - "kw":"Authorizing Folder Access Permissions to Anonymous Users,Application Cases,User Guide", - "title":"Authorizing Folder Access Permissions to Anonymous Users", + "kw":"Granting Anonymous Users Permission to Access Folders,Application Cases,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], + "title":"Granting Anonymous Users Permission to Access Folders", "githuburl":"" }, { "uri":"en-us_topic_0045853849.html", + "node_id":"en-us_topic_0045853849.xml", "product_code":"obs", - "code":"82", + "code":"85", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Versioning", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Versioning", "githuburl":"" }, { "uri":"en-us_topic_0045853504.html", + "node_id":"en-us_topic_0045853504.xml", "product_code":"obs", - "code":"83", + "code":"86", "des":"OBS can store multiple versions of an object. You can quickly search for and restore different versions or restore data in the event of accidental deletions or applicatio", "doc_type":"usermanual", "kw":"Versioning Overview,Versioning,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Versioning Overview", "githuburl":"" }, { "uri":"obs_03_0327.html", + "node_id":"obs_03_0327.xml", "product_code":"obs", - "code":"84", - "des":"After versioning is enabled, on the object details page that is displayed, click Versions, and then you can delete and download versions of the object.Download a desired ", + "code":"87", + "des":"After versioning is configured for a bucket, you can go to the object details page, click the Versions tab, and then delete and download object versions.Download a desire", "doc_type":"usermanual", "kw":"versioning configuration,versioning,Configuring Versioning,Versioning,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring Versioning", "githuburl":"" }, { "uri":"obs_03_0328.html", + "node_id":"obs_03_0328.xml", "product_code":"obs", - "code":"85", + "code":"88", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Logging", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Logging", "githuburl":"" }, { "uri":"en-us_topic_0045853553.html", + "node_id":"en-us_topic_0045853553.xml", "product_code":"obs", - "code":"86", + "code":"89", "des":"You can enable logging to facilitate analysis or audit as required. Access logs enable a bucket owner to analyze the property, type, or trend of requests to the bucket in", "doc_type":"usermanual", "kw":"Logging Overview,Logging,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Logging Overview", "githuburl":"" }, { "uri":"obs_03_0329.html", + "node_id":"obs_03_0329.xml", "product_code":"obs", - "code":"87", + "code":"90", "des":"After logging is enabled for a bucket, OBS automatically converts bucket logs into objects following the naming rules and writes the objects into a target bucket.After lo", "doc_type":"usermanual", "kw":"bucket logging,bucket logging configuration,Configuring Access Logging for a Bucket,Logging,User Gui", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring Access Logging for a Bucket", "githuburl":"" }, { "uri":"obs_03_0330.html", + "node_id":"obs_03_0330.xml", "product_code":"obs", - "code":"88", + "code":"91", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Tags", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Tags", "githuburl":"" }, { "uri":"en-us_topic_0059888284.html", + "node_id":"en-us_topic_0059888284.xml", "product_code":"obs", - "code":"89", + "code":"92", "des":"Tags are used to identify and classify OBS buckets.If you add tags to a bucket, service detail records (SDRs) generated for it will be labeled with these tags. You can cl", "doc_type":"usermanual", "kw":"Tag Overview,Tags,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Tag Overview", "githuburl":"" }, { "uri":"obs_03_0331.html", + "node_id":"obs_03_0331.xml", "product_code":"obs", - "code":"90", - "des":"You can add tags to a bucket when creating the bucket. For details, see Creating a Bucket. Also you can add tags to a bucket after it has been created. This topic describ", + "code":"93", + "des":"When creating a bucket, you can add tags to it. For details, see Creating a Bucket. You can also add tags to a bucket after it has been created. This topic describes how ", "doc_type":"usermanual", "kw":"bucket tags,bucket tag configuration,Configuring Tags for a Bucket,Tags,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring Tags for a Bucket", "githuburl":"" }, { "uri":"obs_03_0147.html", + "node_id":"obs_03_0147.xml", "product_code":"obs", - "code":"91", + "code":"94", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Event Notifications", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Event Notifications", "githuburl":"" }, { "uri":"en-us_topic_0045853816.html", + "node_id":"en-us_topic_0045853816.xml", "product_code":"obs", - "code":"92", + "code":"95", "des":"Simple Message Notification (SMN) is a reliable and extensible message notification service that can handle a huge number of messages. It significantly simplifies system ", "doc_type":"usermanual", "kw":"SMN-Enabled Event Notifications,Event Notifications,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"SMN-Enabled Event Notifications", "githuburl":"" }, { "uri":"en-us_topic_0066088963.html", + "node_id":"en-us_topic_0066088963.xml", "product_code":"obs", - "code":"93", + "code":"96", "des":"This topic describes how to configure an SMN-enabled event notification rule on OBS Console.For details, see SMN-Enabled Event Notifications.Alternatively, you can choose", "doc_type":"usermanual", "kw":"event notifications,SMN-based event notification,event notification configuration,Configuring SMN-En", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring SMN-Enabled Event Notification", "githuburl":"" }, { "uri":"obs_03_0333.html", + "node_id":"obs_03_0333.xml", "product_code":"obs", - "code":"94", + "code":"97", "des":"An enterprise has a large number of files to archive but it does not want to cost much on storage resources. Therefore, the enterprise subscribes to OBS for storing files", "doc_type":"usermanual", "kw":"Application Example: Configuring SMN-Enabled Event Notification,Event Notifications,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Application Example: Configuring SMN-Enabled Event Notification", "githuburl":"" }, { "uri":"obs_03_0001.html", + "node_id":"obs_03_0001.xml", "product_code":"obs", - "code":"95", + "code":"98", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Cross-Region Replication", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Cross-Region Replication", "githuburl":"" }, { "uri":"obs_03_0002.html", + "node_id":"obs_03_0002.xml", "product_code":"obs", - "code":"96", + "code":"99", "des":"OBS offers disaster recovery across regions, catering to your needs for remote backup.Cross-region replication refers to the process of automatically and asynchronously r", "doc_type":"usermanual", "kw":"Cross-Region Replication Overview,Cross-Region Replication,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Cross-Region Replication Overview", "githuburl":"" }, { "uri":"obs_03_0003.html", + "node_id":"obs_03_0003.xml", "product_code":"obs", - "code":"97", - "des":"Currently, OBS allows you to configure a cross-region replication rule for copying all objects from a source bucket to a destination bucket or multiple cross-region repli", + "code":"100", + "des":"To replicate objects from a source bucket to a destination bucket in a different region, you can configure a single cross-region replication rule that is applied to all o", "doc_type":"usermanual", "kw":"cross-region replication,cross-region replication configuration,Configuring Cross-Region Replication", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring Cross-Region Replication", "githuburl":"" }, { "uri":"obs_03_0334.html", + "node_id":"obs_03_0334.xml", "product_code":"obs", - "code":"98", + "code":"101", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Lifecycle Management", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Lifecycle Management", "githuburl":"" }, { "uri":"en-us_topic_0045853659.html", + "node_id":"en-us_topic_0045853659.xml", "product_code":"obs", - "code":"99", - "des":"Lifecycle management means periodically deleting objects in a bucket or transitioning between object storage classes by configuring rules.Lifecycle management applies to ", + "code":"102", + "des":"Lifecycle management means periodically deleting objects in a bucket or transitioning between object storage classes by configuring rules.You may configure lifecycle rule", "doc_type":"usermanual", "kw":"Lifecycle Management Overview,Lifecycle Management,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Lifecycle Management Overview", "githuburl":"" }, { "uri":"obs_03_0335.html", + "node_id":"obs_03_0335.xml", "product_code":"obs", - "code":"100", - "des":"You can configure a lifecycle rule for a bucket or for certain objects. With a lifecycle rule, you can transition objects from Standard to Warm or Cold, or from Warm to C", + "code":"103", + "des":"You can configure a lifecycle rule for a bucket or a set of objects to:Transition objects from Standard to Warm or Cold.Transition objects from Warm to Cold.Expire object", "doc_type":"usermanual", "kw":"lifecycle rule configuration,lifecycle rule,Configuring a Lifecycle Rule,Lifecycle Management,User G", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring a Lifecycle Rule", "githuburl":"" }, { "uri":"obs_03_0030.html", + "node_id":"obs_03_0030.xml", "product_code":"obs", - "code":"101", + "code":"104", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Configuring User-Defined Domain Names", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring User-Defined Domain Names", "githuburl":"" }, { "uri":"obs_03_0031.html", + "node_id":"obs_03_0031.xml", "product_code":"obs", - "code":"102", + "code":"105", "des":"After you upload a file to a bucket, you can access this file using the bucket's access domain name by default. If you want to use a custom domain name to access the file", "doc_type":"usermanual", "kw":"Overview,Configuring User-Defined Domain Names,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Overview", "githuburl":"" }, { "uri":"obs_03_0032.html", + "node_id":"obs_03_0032.xml", "product_code":"obs", - "code":"103", + "code":"106", "des":"The suffix of a user-defined domain name can contain 2 to 6 uppercase or lowercase letters.The CNAME configuration varies depending on DNS providers. For details, contact", "doc_type":"usermanual", "kw":"Configuring a User-Defined Domain Name,Configuring User-Defined Domain Names,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring a User-Defined Domain Name", "githuburl":"" }, { "uri":"obs_03_0336.html", + "node_id":"obs_03_0336.xml", "product_code":"obs", - "code":"104", + "code":"107", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Static Website Hosting", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Static Website Hosting", "githuburl":"" }, { "uri":"en-us_topic_0066036537.html", + "node_id":"en-us_topic_0066036537.xml", "product_code":"obs", - "code":"105", + "code":"108", "des":"You can upload the content files of static websites to your bucket on OBS, authorize anonymous users the permission to read these files, and configure static website host", "doc_type":"usermanual", "kw":"Static Website Hosting Overview,Static Website Hosting,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Static Website Hosting Overview", "githuburl":"" }, { "uri":"obs_03_0337.html", + "node_id":"obs_03_0337.xml", "product_code":"obs", - "code":"106", + "code":"109", "des":"When using static website hosting, you can also configure redirection to redirect specific or all requests.If the structure, address, or file name extension of a website ", "doc_type":"usermanual", "kw":"Redirection Overview,Static Website Hosting,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Redirection Overview", "githuburl":"" }, { "uri":"en-us_topic_0045853755.html", + "node_id":"en-us_topic_0045853755.xml", "product_code":"obs", - "code":"107", - "des":"This section describes how to configure static website hosting for buckets and use bucket domain names to access static websites.The static website hosting takes effect w", + "code":"110", + "des":"You can configure static website hosting for a bucket and then use the bucket's domain name to access static websites hosted in the bucket.The configuration of static web", "doc_type":"usermanual", "kw":"static website hosting configuration,hosted websites,static website hosting,Configuring Static Websi", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring Static Website Hosting", "githuburl":"" }, { "uri":"en-us_topic_0066088957.html", + "node_id":"en-us_topic_0066088957.xml", "product_code":"obs", - "code":"108", - "des":"You can redirect all requests for a bucket to another bucket or URL by configuring redirection rules.Web page files of the static website have been uploaded to a bucket.T", + "code":"111", + "des":"You can redirect all requests for a bucket to another bucket or URL by configuring redirection rules.Web page files required for static website hosting have been uploaded", "doc_type":"usermanual", "kw":"redirect configuration,request redirect,Configuring Redirection,Static Website Hosting,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring Redirection", "githuburl":"" }, { "uri":"obs_03_0338.html", + "node_id":"obs_03_0338.xml", "product_code":"obs", - "code":"109", + "code":"112", "des":"OBS allows you to access static websites hosted by OBS using user-defined domain names. This section uses a specific scenario as an example to describe how to use a user-", "doc_type":"usermanual", "kw":"Using a User-Defined Domain Name to Configure Static Website Hosting,Static Website Hosting,User Gui", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Using a User-Defined Domain Name to Configure Static Website Hosting", "githuburl":"" }, { "uri":"obs_03_0339.html", + "node_id":"obs_03_0339.xml", "product_code":"obs", - "code":"110", + "code":"113", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Cross-Origin Resource Sharing", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Cross-Origin Resource Sharing", "githuburl":"" }, { "uri":"en-us_topic_0045853680.html", + "node_id":"en-us_topic_0045853680.xml", "product_code":"obs", - "code":"111", + "code":"114", "des":"CORS is a browser-standard mechanism provided by the World Wide Web Consortium (W3C). It defines the interaction methods between client-side web applications in one origi", "doc_type":"usermanual", "kw":"CORS Overview,Cross-Origin Resource Sharing,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"CORS Overview", "githuburl":"" }, { "uri":"en-us_topic_0066036542.html", + "node_id":"en-us_topic_0066036542.xml", "product_code":"obs", - "code":"112", + "code":"115", "des":"This section describes how to use CORS in HTML5 to implement cross-origin access.Static website hosting has been configured. For details, see Configuring Static Website H", "doc_type":"usermanual", "kw":"cross-origin resource sharing,cors,cors configuration,Configuring CORS,Cross-Origin Resource Sharing", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring CORS", "githuburl":"" }, { "uri":"obs_03_0340.html", + "node_id":"obs_03_0340.xml", "product_code":"obs", - "code":"113", + "code":"116", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"URL Validation", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"URL Validation", "githuburl":"" }, { "uri":"en-us_topic_0045853689.html", + "node_id":"en-us_topic_0045853689.xml", "product_code":"obs", - "code":"114", + "code":"117", "des":"To reduce costs, some websites steal links from other websites to enrich their own contents. Link stealing not only damages interests of the original websites but also in", "doc_type":"usermanual", "kw":"URL Validation Overview,URL Validation,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"URL Validation Overview", "githuburl":"" }, { "uri":"obs_03_0341.html", + "node_id":"obs_03_0341.xml", "product_code":"obs", - "code":"115", + "code":"118", "des":"OBS blocks access requests from blacklisted URLs and allows those from whitelisted URLs.Static website hosting has been enabled.Principles for setting Referers:The length", "doc_type":"usermanual", "kw":"URL validation,URL validation configuration,whitelist configuration,blacklist configuration,Configur", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring URL Validation", "githuburl":"" }, { "uri":"obs_03_0350.html", + "node_id":"obs_03_0350.xml", "product_code":"obs", - "code":"116", + "code":"119", "des":"The requester-pays configuration allows the requester to pay for data transfer and API calls associated with accessing the requested OBS resources, while the bucket owner", "doc_type":"usermanual", "kw":"Requester Pays,OBS Console Operation Guide,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Requester Pays", "githuburl":"" }, { "uri":"obs_03_0008.html", + "node_id":"obs_03_0008.xml", "product_code":"obs", - "code":"117", + "code":"120", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Monitoring", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Monitoring", "githuburl":"" }, { "uri":"obs_03_0009.html", + "node_id":"obs_03_0009.xml", "product_code":"obs", - "code":"118", - "des":"You may send PUT and GET requests continuously when using OBS, which generates upload and download traffic. You may also receive error responses from the server. Cloud Ey", + "code":"121", + "des":"In the use of OBS, you may send PUT and GET requests that generate upload and download traffic, or receive error responses from the server. To learn the requests, traffic", "doc_type":"usermanual", "kw":"OBS monitoring,metric monitoring,Monitoring OBS,Monitoring,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Monitoring OBS", "githuburl":"" }, { "uri":"obs_03_0010.html", + "node_id":"obs_03_0010.xml", "product_code":"obs", - "code":"119", + "code":"122", "des":"This section defines the namespace, list, and dimensions of monitoring metrics reported by OBS to Cloud Eye. You can use the management console or APIs provided by Cloud ", "doc_type":"usermanual", "kw":"OBS monitoring metrics,obs metrics,obs metric monitoring,OBS Monitoring Metrics,Monitoring,User Guid", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"OBS Monitoring Metrics", "githuburl":"" }, { "uri":"obs_03_0020.html", + "node_id":"obs_03_0020.xml", "product_code":"obs", - "code":"120", + "code":"123", "des":"Cloud Trace Service (CTS) records operations on cloud resources in your account. You can use the records to perform security analysis, track resource changes, audit compl", "doc_type":"usermanual", "kw":"OBS data operations,data operations,OBS management operations,management operations,Cloud Trace Serv", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Cloud Trace Service", "githuburl":"" }, { "uri":"obs_03_0076.html", + "node_id":"obs_03_0076.xml", "product_code":"obs", - "code":"121", + "code":"124", "des":"When you delete or change the storage class of an object, the Task Management is displayed in the lower part of the console. You can manage tasks through Task Management.", "doc_type":"usermanual", "kw":"Task Management,OBS Console Operation Guide,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Task Management", "githuburl":"" }, { "uri":"obs_03_0036.html", + "node_id":"obs_03_0036.xml", "product_code":"obs", - "code":"122", + "code":"125", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Related Operations", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Related Operations", "githuburl":"" }, { "uri":"obs_03_0037.html", + "node_id":"obs_03_0037.xml", "product_code":"obs", - "code":"123", + "code":"126", "des":"To use some OBS features, you need to use IAM agencies to grant required permissions to OBS for processing your data.Click Modify Permissions in the row of the region whe", "doc_type":"usermanual", "kw":"Creating an IAM Agency,Related Operations,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Creating an IAM Agency", "githuburl":"" }, { "uri":"obs_03_0342.html", + "node_id":"obs_03_0342.xml", "product_code":"obs", - "code":"124", + "code":"127", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Troubleshooting", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Troubleshooting", "githuburl":"" }, { "uri":"obs_03_0343.html", + "node_id":"obs_03_0343.xml", "product_code":"obs", - "code":"125", + "code":"128", "des":"A user logs in to OBS Console using Internet Explorer 11 and uploads an object. When the user attempts to download the object to the original path to replace the original", "doc_type":"usermanual", "kw":"An Object Fails to Be Downloaded Using Internet Explorer 11,Troubleshooting,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"An Object Fails to Be Downloaded Using Internet Explorer 11", "githuburl":"" }, { "uri":"obs_03_0344.html", + "node_id":"obs_03_0344.xml", "product_code":"obs", - "code":"126", + "code":"129", "des":"Why OBS Console cannot be opened in Internet Explorer 9, even if the address of OBS Console can be pinged?Confirm whether Use SSL and Use TLS are selected in Internet Opt", "doc_type":"usermanual", "kw":"OBS Console Cannot Be Opened in Internet Explorer 9,Troubleshooting,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"OBS Console Cannot Be Opened in Internet Explorer 9", "githuburl":"" }, { "uri":"obs_03_0345.html", + "node_id":"obs_03_0345.xml", "product_code":"obs", - "code":"127", + "code":"130", "des":"After an object with a relatively long name is downloaded to a local path, the object name changes.For Windows, a file name, including the file name extension, can contai", "doc_type":"usermanual", "kw":"The Object Name Changes After an Object with a Long Name Is Downloaded to a Local Computer,Troublesh", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"The Object Name Changes After an Object with a Long Name Is Downloaded to a Local Computer", "githuburl":"" }, { "uri":"obs_03_0346.html", + "node_id":"obs_03_0346.xml", "product_code":"obs", - "code":"128", - "des":"When configuring event notification on OBS, the user is prompted by the message \"OBS is not authorized to use this topic. Go to SMN to authorize OBS to use this topic.\"Go", + "code":"131", + "des":"During the configuration of event notifications on OBS, message \"OBS is not authorized to use this topic. Go to SMN to authorize OBS to use this topic.\" is displayed.Go t", "doc_type":"usermanual", - "kw":"Failed to Configure Event Notification,Troubleshooting,User Guide", - "title":"Failed to Configure Event Notification", + "kw":"Failed to Configure Event Notifications,Troubleshooting,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], + "title":"Failed to Configure Event Notifications", "githuburl":"" }, { "uri":"obs_03_0347.html", + "node_id":"obs_03_0347.xml", "product_code":"obs", - "code":"129", + "code":"132", "des":"Error message \"Time difference is longer than 15 minutes between the client and server\" or \"The difference between the request time and the current time is too large\" is ", "doc_type":"usermanual", "kw":"Time Difference Is Longer Than 15 Minutes Between the Client and Server,Troubleshooting,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Time Difference Is Longer Than 15 Minutes Between the Client and Server", "githuburl":"" }, { "uri":"obs_03_0348.html", + "node_id":"obs_03_0348.xml", "product_code":"obs", - "code":"130", + "code":"133", "des":"If a request fails to be processed due to errors, an error response is returned. An error response contains an error code and error details. Table 1 lists some common err", "doc_type":"usermanual", "kw":"Error Code List,OBS Console Operation Guide,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Error Code List", "githuburl":"" }, { "uri":"obs_03_0400.html", + "node_id":"obs_03_0400.xml", "product_code":"obs", - "code":"131", + "code":"134", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"OBS Browser Operation Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"OBS Browser Operation Guide", "githuburl":"" }, { "uri":"obs_03_0401.html", + "node_id":"obs_03_0401.xml", "product_code":"obs", - "code":"132", + "code":"135", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Introduction to OBS Browser", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Introduction to OBS Browser", "githuburl":"" }, { "uri":"en-us_topic_0045853837.html", + "node_id":"en-us_topic_0045853837.xml", "product_code":"obs", - "code":"133", + "code":"136", "des":"OBS Browser is a client that runs on Windows systems. It can help you effortlessly manage object storage on your personal computers.Download OBS Browser. For details, see", "doc_type":"usermanual", "kw":"OBS Browser Overview,Introduction to OBS Browser,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"OBS Browser Overview", "githuburl":"" }, { "uri":"obs_03_0402.html", + "node_id":"obs_03_0402.xml", "product_code":"obs", - "code":"134", + "code":"137", "des":"Table 1 describes the functions of OBS Browser:Function descriptionFunctionDescriptionBucket managementCreates and deletes buckets of different storage classes in specifi", "doc_type":"usermanual", "kw":"Function Description,Introduction to OBS Browser,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Function Description", "githuburl":"" }, { "uri":"obs_03_0403.html", + "node_id":"obs_03_0403.xml", "product_code":"obs", - "code":"135", + "code":"138", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Getting Started", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Getting Started", "githuburl":"" }, { "uri":"obs_03_0064.html", + "node_id":"obs_03_0064.xml", "product_code":"obs", - "code":"136", + "code":"139", "des":"The follow-up sections describe how to complete the following tasks illustrated in Figure 1.Click in the upper right of the page, or right-click the bucket list or objec", "doc_type":"usermanual", "kw":"Process Description,Getting Started,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Process Description", "githuburl":"" }, { "uri":"obs_03_0035.html", + "node_id":"obs_03_0035.xml", "product_code":"obs", - "code":"137", + "code":"140", "des":"If your cloud service account does not need individual IAM users, then you may skip this section. Your permissions to use OBS functions are not affected.If IAM users are ", "doc_type":"usermanual", "kw":"Configuring User Permissions,Getting Started,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring User Permissions", "githuburl":"" }, { "uri":"en-us_topic_0045853783.html", + "node_id":"en-us_topic_0045853783.xml", "product_code":"obs", - "code":"138", + "code":"141", "des":"To download the package, click the OBS Browser package link on the homepage of OBS Console.Downloading an OBS Browser software package", "doc_type":"usermanual", "kw":"Downloading OBS Browser,Getting Started,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Downloading OBS Browser", "githuburl":"" }, { "uri":"obs_03_0405.html", + "node_id":"obs_03_0405.xml", "product_code":"obs", - "code":"139", + "code":"142", "des":"This section describes how to create access keys (AK and SK) in OBS Console. A pair of AK and SK is used to encrypt the signature of a request, ensuring that the request ", "doc_type":"usermanual", "kw":"Creating Access Keys (AK and SK),Getting Started,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Creating Access Keys (AK and SK)", "githuburl":"" }, { "uri":"en-us_topic_0045853477.html", + "node_id":"en-us_topic_0045853477.xml", "product_code":"obs", - "code":"140", + "code":"143", "des":"This section describes how to log in to OBS Browser.If you are starting OBS Browser for the first time, the Add Account dialog box is automatically displayed. Go directly", "doc_type":"usermanual", "kw":"Logging In to OBS Browser,Getting Started,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Logging In to OBS Browser", "githuburl":"" }, { "uri":"obs_03_0022.html", + "node_id":"obs_03_0022.xml", "product_code":"obs", - "code":"141", + "code":"144", "des":"A bucket is a container that stores objects in OBS. Before you store data in OBS, you need to create a bucket first.An account can create a maximum of 100 buckets and par", "doc_type":"usermanual", "kw":"Adding a Bucket,Getting Started,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Adding a Bucket", "githuburl":"" }, { "uri":"obs_03_0024.html", + "node_id":"obs_03_0024.xml", "product_code":"obs", - "code":"142", + "code":"145", "des":"Files are uploaded in multiparts on OBS Browser. OBS Browser supports the upload of a single file with the maximum size of 48.8 TB.OBS Browser supports resumable transfer", "doc_type":"usermanual", "kw":"Uploading a File or Folder,Getting Started,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Uploading a File or Folder", "githuburl":"" }, { "uri":"obs_03_0025.html", + "node_id":"obs_03_0025.xml", "product_code":"obs", - "code":"143", + "code":"146", "des":"OBS Browser supports batch download. You can select multiple files or folders and click Download above the object list to download objects in batches.Before downloading C", "doc_type":"usermanual", "kw":"Downloading a File or Folder,Getting Started,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Downloading a File or Folder", "githuburl":"" }, { "uri":"obs_03_0026.html", + "node_id":"obs_03_0026.xml", "product_code":"obs", - "code":"144", + "code":"147", "des":"Deleting a folder will delete all files in the folder. Ensure that all files in a folder are not needed before deleting the folder.OBS Browser supports batch deletion. Yo", "doc_type":"usermanual", "kw":"Deleting a File or Folder,Getting Started,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Deleting a File or Folder", "githuburl":"" }, { "uri":"obs_03_0027.html", + "node_id":"obs_03_0027.xml", "product_code":"obs", - "code":"145", + "code":"148", "des":"You can delete unwanted buckets on OBS Console to free up the quota of buckets.All objects in the bucket have been deleted.This operation can be performed only by the buc", "doc_type":"usermanual", "kw":"Deleting a Bucket,Getting Started,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Deleting a Bucket", "githuburl":"" }, { "uri":"obs_03_0012.html", + "node_id":"obs_03_0012.xml", "product_code":"obs", - "code":"146", - "des":"OBS supports tiered storage classes at the bucket level and object level.OBS provides the following storage classes: Standard, Warm, and Cold.Different storage classes me", + "code":"149", + "des":"OBS supports tiered storage classes at the bucket level and object level.OBS provides the following storage classes: Standard, Warm, and Cold.These storage classes can me", "doc_type":"usermanual", "kw":"Storage Classes Overview,OBS Browser Operation Guide,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Storage Classes Overview", "githuburl":"" }, { "uri":"obs_03_0406.html", + "node_id":"obs_03_0406.xml", "product_code":"obs", - "code":"147", + "code":"150", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Managing Buckets", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Managing Buckets", "githuburl":"" }, { "uri":"obs_03_0059.html", + "node_id":"obs_03_0059.xml", "product_code":"obs", - "code":"148", + "code":"151", "des":"OBS Browser supports three methods of bucket management.You can click the button above the bucket list to manage buckets.Also, you can click the blank area in the row whe", "doc_type":"usermanual", "kw":"Bucket Management Methods,Managing Buckets,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Bucket Management Methods", "githuburl":"" }, { "uri":"obs_03_0407.html", + "node_id":"obs_03_0407.xml", "product_code":"obs", - "code":"149", - "des":"Buckets are containers that store objects in OBS. Before you store data in OBS, you need to create buckets.An account can create a maximum of 100 buckets and parallel fil", + "code":"152", + "des":"Buckets are containers that store objects in OBS. Before you can store data in OBS, you must create a bucket.An account can create a maximum of 100 buckets and parallel f", "doc_type":"usermanual", "kw":"Adding a Bucket,Managing Buckets,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Adding a Bucket", "githuburl":"" }, { "uri":"obs_03_0408.html", + "node_id":"obs_03_0408.xml", "product_code":"obs", - "code":"150", + "code":"153", "des":"This section describes how to search for a bucket by entering characters contained in its name on OBS Browser.The found buckets are displayed in the bucket list. If you w", "doc_type":"usermanual", "kw":"Searching for a Bucket,Managing Buckets,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Searching for a Bucket", "githuburl":"" }, { "uri":"obs_03_0409.html", + "node_id":"obs_03_0409.xml", "product_code":"obs", - "code":"151", + "code":"154", "des":"This section describes how to view basic information about a bucket, including the owner, capacity, location, and object quantity using OBS Browser.The statistics of Used", "doc_type":"usermanual", "kw":"Viewing Basic Information of a Bucket,Managing Buckets,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Viewing Basic Information of a Bucket", "githuburl":"" }, { "uri":"en-us_topic_0045853710.html", + "node_id":"en-us_topic_0045853710.xml", "product_code":"obs", - "code":"152", + "code":"155", "des":"Data can be uploaded to OBS using multipart uploads. Fragments are generated, if a multipart upload fails because of the following reasons (included but not limited to):T", "doc_type":"usermanual", "kw":"Managing Fragments,Managing Buckets,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Managing Fragments", "githuburl":"" }, { "uri":"obs_03_0411.html", + "node_id":"obs_03_0411.xml", "product_code":"obs", - "code":"153", + "code":"156", "des":"You can delete unwanted buckets on OBS Console to free up the quota of buckets.All objects in the bucket have been deleted.This operation can be performed only by the buc", "doc_type":"usermanual", "kw":"Deleting a Bucket,Managing Buckets,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Deleting a Bucket", "githuburl":"" }, { "uri":"obs_03_0412.html", + "node_id":"obs_03_0412.xml", "product_code":"obs", - "code":"154", + "code":"157", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Managing Objects", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Managing Objects", "githuburl":"" }, { "uri":"obs_03_0060.html", + "node_id":"obs_03_0060.xml", "product_code":"obs", - "code":"155", + "code":"158", "des":"OBS Browser supports three methods of object management.You can use the operation buttons above the object list to manage objects.Click the blank area in the row where th", "doc_type":"usermanual", "kw":"Object Management Methods,Managing Objects,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Object Management Methods", "githuburl":"" }, { "uri":"obs_03_0413.html", + "node_id":"obs_03_0413.xml", "product_code":"obs", - "code":"156", + "code":"159", "des":"This section describes how to create a folder using OBS Browser.Unlike the file system, OBS does not involve the concepts of file and folder. For easy data management, OB", "doc_type":"usermanual", "kw":"Creating a Folder,Managing Objects,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Creating a Folder", "githuburl":"" }, { "uri":"obs_03_0414.html", + "node_id":"obs_03_0414.xml", "product_code":"obs", - "code":"157", + "code":"160", "des":"Files are uploaded in multiparts on OBS Browser. OBS Browser supports the upload of a single file with the maximum size of 48.8 TB.OBS Browser supports resumable transfer", "doc_type":"usermanual", "kw":"Uploading a File or Folder,Managing Objects,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Uploading a File or Folder", "githuburl":"" }, { "uri":"obs_03_0415.html", + "node_id":"obs_03_0415.xml", "product_code":"obs", - "code":"158", + "code":"161", "des":"OBS Browser supports batch download. You can select multiple files or folders and click Download above the object list to download objects in batches.Before downloading C", "doc_type":"usermanual", "kw":"Downloading a File or Folder,Managing Objects,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Downloading a File or Folder", "githuburl":"" }, { "uri":"obs_03_0416.html", + "node_id":"obs_03_0416.xml", "product_code":"obs", - "code":"159", + "code":"162", "des":"The object uniform resource locator (URL) (object sharing) function allows anonymous users to access object data using object URLs.An anonymous user has been assigned wit", "doc_type":"usermanual", "kw":"Accessing an Object Using Its Object URL,Managing Objects,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Accessing an Object Using Its Object URL", "githuburl":"" }, { "uri":"obs_03_0417.html", + "node_id":"obs_03_0417.xml", "product_code":"obs", - "code":"160", + "code":"163", "des":"This section describes how to search for a file or folder by name prefix on OBS Browser.In the root directory of the bucket, files and folders whose name starts with the ", "doc_type":"usermanual", "kw":"Searching for a File or Folder,Managing Objects,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Searching for a File or Folder", "githuburl":"" }, { "uri":"en-us_topic_0045853551.html", + "node_id":"en-us_topic_0045853551.xml", "product_code":"obs", - "code":"161", + "code":"164", "des":"This section describes how to delete a file or folder.Deleting a folder will delete all files in the folder. Ensure that all files in a folder can be deleted before delet", "doc_type":"usermanual", "kw":"Deleting a File or Folder,Managing Objects,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Deleting a File or Folder", "githuburl":"" }, { "uri":"obs_03_0418.html", + "node_id":"obs_03_0418.xml", "product_code":"obs", - "code":"162", + "code":"165", "des":"The Cold storage class is applicable to archiving rarely-accessed (such as once a year) data. The application scenarios include data archiving and long-term data retentio", "doc_type":"usermanual", "kw":"Restoring a Cold File in OBS,Managing Objects,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Restoring a Cold File in OBS", "githuburl":"" }, { "uri":"obs_03_0419.html", + "node_id":"obs_03_0419.xml", "product_code":"obs", - "code":"163", + "code":"166", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Server-Side Encryption", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Server-Side Encryption", "githuburl":"" }, { "uri":"obs_03_0420.html", + "node_id":"obs_03_0420.xml", "product_code":"obs", - "code":"164", + "code":"167", "des":"After server-side encryption is enabled, objects to be uploaded will be encrypted and stored on the server. When objects are downloaded, they will be decrypted on the ser", "doc_type":"usermanual", "kw":"Server-Side Encryption Overview,Server-Side Encryption,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Server-Side Encryption Overview", "githuburl":"" }, { "uri":"obs_03_0421.html", + "node_id":"obs_03_0421.xml", "product_code":"obs", - "code":"165", - "des":"OBS allows users to encrypt objects on the server side so that the objects can be securely stored in OBS.In the region where the OBS is deployed, add the KMS Administrato", + "code":"168", + "des":"OBS allows you to encrypt objects on the server side so that the objects can be securely stored in OBS.The KMS Administrator permission has been granted for the region wh", "doc_type":"usermanual", "kw":"Uploading a File with Server-Side Encryption,Server-Side Encryption,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Uploading a File with Server-Side Encryption", "githuburl":"" }, { "uri":"obs_03_0140.html", + "node_id":"obs_03_0140.xml", "product_code":"obs", - "code":"166", + "code":"169", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Permission Control", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Permission Control", "githuburl":"" }, { "uri":"obs_03_0062.html", + "node_id":"obs_03_0062.xml", "product_code":"obs", - "code":"167", + "code":"170", "des":"OBS Browser supports permission control based on bucket policies, bucket ACLs, and object ACLs.Bucket policy: A bucket policy applies to the configured OBS bucket and obj", "doc_type":"usermanual", "kw":"Overview,Permission Control,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Overview", "githuburl":"" }, { "uri":"en-us_topic_0045853707.html", + "node_id":"en-us_topic_0045853707.xml", "product_code":"obs", - "code":"168", - "des":"A bucket policy defines the access control policy of resources (buckets and objects) in OBS.The size of a bucket policy cannot exceed 20 KB.Table 1 describes the paramete", + "code":"171", + "des":"A bucket policy defines access control over resources (buckets and objects) in OBS.The size of a bucket policy cannot exceed 20 KB.Table 1 describes the parameters of buc", "doc_type":"usermanual", "kw":"Configuring a Bucket Policy,Permission Control,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring a Bucket Policy", "githuburl":"" }, { "uri":"en-us_topic_0045853509.html", + "node_id":"en-us_topic_0045853509.xml", "product_code":"obs", - "code":"169", - "des":"By configuring ACL, you can authorize bucket and ACL permissions to the Owner, Anonymous User, Registered User, or Log Delivery User groups.", + "code":"172", + "des":"You can configure a bucket ACL to grant permissions to the owner, anonymous users, registered users, or log delivery user groups.", "doc_type":"usermanual", "kw":"Configuring a Bucket ACL,Permission Control,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring a Bucket ACL", "githuburl":"" }, { "uri":"obs_03_0424.html", + "node_id":"obs_03_0424.xml", "product_code":"obs", - "code":"170", + "code":"173", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Lifecycle Management", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Lifecycle Management", "githuburl":"" }, { "uri":"obs_03_0425.html", + "node_id":"obs_03_0425.xml", "product_code":"obs", - "code":"171", - "des":"Lifecycle management means periodically deleting objects in a bucket or transitioning between object storage classes by configuring rules.Lifecycle management applies to ", + "code":"174", + "des":"Lifecycle management means periodically deleting objects in a bucket or transitioning between object storage classes by configuring rules.You may configure lifecycle rule", "doc_type":"usermanual", "kw":"Lifecycle Management Overview,Lifecycle Management,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Lifecycle Management Overview", "githuburl":"" }, { "uri":"en-us_topic_0045853854.html", + "node_id":"en-us_topic_0045853854.xml", "product_code":"obs", - "code":"172", + "code":"175", "des":"You can configure a lifecycle management rule for a bucket, and applicable objects in the bucket will be managed by the rule.Basic Information:Status: Select Enable to en", "doc_type":"usermanual", "kw":"Configuring a Lifecycle Rule,Lifecycle Management,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring a Lifecycle Rule", "githuburl":"" }, { "uri":"obs_03_0427.html", + "node_id":"obs_03_0427.xml", "product_code":"obs", - "code":"173", + "code":"176", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"CORS", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"CORS", "githuburl":"" }, { "uri":"obs_03_0428.html", + "node_id":"obs_03_0428.xml", "product_code":"obs", - "code":"174", + "code":"177", "des":"CORS is a browser-standard mechanism provided by the World Wide Web Consortium (W3C). It defines the interaction methods between client-side web applications in one origi", "doc_type":"usermanual", "kw":"CORS Overview,CORS,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"CORS Overview", "githuburl":"" }, { "uri":"en-us_topic_0045853860.html", + "node_id":"en-us_topic_0045853860.xml", "product_code":"obs", - "code":"175", + "code":"178", "des":"This section describes how to use CORS in HTML5 to implement cross-origin access.You can set a maximum of 100 CORS rules for one bucket.Table 1 describes parameters in CO", "doc_type":"usermanual", "kw":"Configuring CORS,CORS,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring CORS", "githuburl":"" }, { "uri":"obs_03_0430.html", + "node_id":"obs_03_0430.xml", "product_code":"obs", - "code":"176", + "code":"179", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Logging", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Logging", "githuburl":"" }, { "uri":"obs_03_0431.html", + "node_id":"obs_03_0431.xml", "product_code":"obs", - "code":"177", + "code":"180", "des":"You can enable logging to facilitate analysis or audit as required. Access logs enable a bucket owner to analyze the property, type, or trend of requests to the bucket in", "doc_type":"usermanual", "kw":"Logging Overview,Logging,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Logging Overview", "githuburl":"" }, { "uri":"en-us_topic_0045853744.html", + "node_id":"en-us_topic_0045853744.xml", "product_code":"obs", - "code":"178", - "des":"After logging is enabled for a bucket, OBS automatically converts bucket logs into objects following the naming rules and writes the objects into a target bucket.The log ", + "code":"181", + "des":"After logging is enabled for a bucket, OBS automatically converts the bucket's logs into objects in a fixed naming format and then writes these objects into a destination", "doc_type":"usermanual", "kw":"Configuring Logging,Logging,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring Logging", "githuburl":"" }, { "uri":"obs_03_0433.html", + "node_id":"obs_03_0433.xml", "product_code":"obs", - "code":"179", + "code":"182", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"External Buckets", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"External Buckets", "githuburl":"" }, { "uri":"obs_03_0434.html", + "node_id":"obs_03_0434.xml", "product_code":"obs", - "code":"180", + "code":"183", "des":"The bucket owner can authorize other accounts the read and write access to the bucket. If you are authorized with such permissions, you can add the bucket on OBS Browser ", "doc_type":"usermanual", "kw":"External Bucket Overview,External Buckets,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"External Bucket Overview", "githuburl":"" }, { "uri":"en-us_topic_0045853737.html", + "node_id":"en-us_topic_0045853737.xml", "product_code":"obs", - "code":"181", + "code":"184", "des":"OBS Browser supports the external bucket adding function.You have obtained the permissions to read and write the external bucket that you want to add.For example: Account", "doc_type":"usermanual", "kw":"Adding External Buckets,External Buckets,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Adding External Buckets", "githuburl":"" }, { "uri":"obs_03_0134.html", + "node_id":"obs_03_0134.xml", "product_code":"obs", - "code":"182", + "code":"185", "des":"A bucket ACL can be used to grant the read and write access to a bucket. If only the read access to the bucket is granted, the authorized user can only add the bucket and", "doc_type":"usermanual", "kw":"Application Example 1: Authorizing Access Permissions Required for Adding an External Bucket Through", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Application Example 1: Authorizing Access Permissions Required for Adding an External Bucket Through the Bucket ACL", "githuburl":"" }, { "uri":"obs_03_0135.html", + "node_id":"obs_03_0135.xml", "product_code":"obs", - "code":"183", + "code":"186", "des":"A standard bucket policy can be used to grant the read and write access to a bucket. The standard bucket policy grants the public read and write access to the bucket, tha", "doc_type":"usermanual", "kw":"Application Example 2: Authorizing Access Permissions Required for Adding an External Bucket Through", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Application Example 2: Authorizing Access Permissions Required for Adding an External Bucket Through the Standard Bucket Policy", "githuburl":"" }, { "uri":"obs_03_0136.html", + "node_id":"obs_03_0136.xml", "product_code":"obs", - "code":"184", + "code":"187", "des":"A custom bucket policy can be used to grant the read and write access permissions to the bucket to be added.If a custom bucket policy is used to authorize such permission", "doc_type":"usermanual", "kw":"Application Example 3: Authorizing Access Permissions Required for Adding an External Bucket Through", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Application Example 3: Authorizing Access Permissions Required for Adding an External Bucket Through the Custom Bucket Policy", "githuburl":"" }, { "uri":"obs_03_0435.html", + "node_id":"obs_03_0435.xml", "product_code":"obs", - "code":"185", + "code":"188", "des":"OBS Browser supports the management of upload, download, deletion, and restoration tasks. You can suspend, cancel, or delete tasks using the task management function.If t", "doc_type":"usermanual", "kw":"Task Management,OBS Browser Operation Guide,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Task Management", "githuburl":"" }, { "uri":"obs_03_0028.html", + "node_id":"obs_03_0028.xml", "product_code":"obs", - "code":"186", + "code":"189", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Related Operations", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Related Operations", "githuburl":"" }, { "uri":"en-us_topic_0045853630.html", + "node_id":"en-us_topic_0045853630.xml", "product_code":"obs", - "code":"187", + "code":"190", "des":"This section describes how to modify system configurations.Table 1 describes the parameters that can be modified.", "doc_type":"usermanual", "kw":"Configuring the System,Related Operations,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Configuring the System", "githuburl":"" }, { "uri":"en-us_topic_0045853764.html", + "node_id":"en-us_topic_0045853764.xml", "product_code":"obs", - "code":"188", + "code":"191", "des":"Account names on OBS Browser are used to distinguish one from another, which are irrelevant to the registered cloud service account. An OBS Browser account has one pair o", "doc_type":"usermanual", "kw":"Managing Accounts,Related Operations,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Managing Accounts", "githuburl":"" }, { "uri":"obs_03_0438.html", + "node_id":"obs_03_0438.xml", "product_code":"obs", - "code":"189", + "code":"192", "des":"This section describes how to update OBS Browser.Every time you log in to OBS Browser, the system automatically checks for update by default. If the current version is no", "doc_type":"usermanual", "kw":"Updating OBS Browser,Related Operations,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Updating OBS Browser", "githuburl":"" }, { "uri":"obs_03_0439.html", + "node_id":"obs_03_0439.xml", "product_code":"obs", - "code":"190", + "code":"193", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Troubleshooting", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Troubleshooting", "githuburl":"" }, { "uri":"obs_03_0440.html", + "node_id":"obs_03_0440.xml", "product_code":"obs", - "code":"191", + "code":"194", "des":"When a user attempts to log in to OBS Browser, the login page does not respond.Delete the obs folder in the AppData\\Local directory on the C drive to clear OBS Browser re", "doc_type":"usermanual", "kw":"Login Page of OBS Browser Does Not Respond upon User Login,Troubleshooting,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Login Page of OBS Browser Does Not Respond upon User Login", "githuburl":"" }, { "uri":"obs_03_0441.html", + "node_id":"obs_03_0441.xml", "product_code":"obs", - "code":"192", + "code":"195", "des":"Why is no upload task created and nothing displayed on the page after a large number of files are selected for upload using OBS Browser? For example, after a user logs in", "doc_type":"usermanual", "kw":"No Upload Task Is Created After a Large Number of Files Are Selected for Upload On OBS Browser,Troub", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"No Upload Task Is Created After a Large Number of Files Are Selected for Upload On OBS Browser", "githuburl":"" }, { "uri":"obs_03_0442.html", + "node_id":"obs_03_0442.xml", "product_code":"obs", - "code":"193", + "code":"196", "des":"Why does blue or black screen of death occur when files are uploaded using OBS Browser?When OBS Browser is used to upload a large number of files or a few of big files, m", "doc_type":"usermanual", "kw":"Blue or Black Screen of Death Occurs During File Upload on OBS Browser,Troubleshooting,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Blue or Black Screen of Death Occurs During File Upload on OBS Browser", "githuburl":"" }, { "uri":"obs_03_0443.html", + "node_id":"obs_03_0443.xml", "product_code":"obs", - "code":"194", + "code":"197", "des":"Why are the tasks not displayed in the task list when objects are being uploaded, downloaded, or deleted using OBS Browser?When OBS Browser is used to upload, download, o", "doc_type":"usermanual", "kw":"Tasks Are Not Displayed in the Task List When Objects Are Managed Using OBS Browser,Troubleshooting,", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Tasks Are Not Displayed in the Task List When Objects Are Managed Using OBS Browser", "githuburl":"" }, { "uri":"obs_03_0444.html", + "node_id":"obs_03_0444.xml", "product_code":"obs", - "code":"195", - "des":"OBS is unavailable when an error is reported stating \"Time difference is longer than 15 minutes between the client and server.\"For security purposes, OBS checks the time ", + "code":"198", + "des":"OBS is unavailable when an error is reported stating that the time difference between the client and server is larger than 15 minutes.For security purposes, OBS checks th", "doc_type":"usermanual", - "kw":"Time Difference Is Longer Than 15 Minutes Between the Client and the Server,Troubleshooting,User Gui", - "title":"Time Difference Is Longer Than 15 Minutes Between the Client and the Server", + "kw":"Time Difference Is Longer Than 15 Minutes Between the Client and Server,Troubleshooting,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], + "title":"Time Difference Is Longer Than 15 Minutes Between the Client and Server", "githuburl":"" }, { "uri":"obs_03_0145.html", + "node_id":"obs_03_0145.xml", "product_code":"obs", - "code":"196", + "code":"199", "des":"When starting OBS Browser on a Windows OS, an error occurs with the message displays as \"The task management function cannot work properly because the database is unavail", "doc_type":"usermanual", "kw":"An Error Occurs During the Start-up of OBS Browser, Indicating That the Task Management Function Can", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"An Error Occurs During the Start-up of OBS Browser, Indicating That the Task Management Function Cannot Work Properly Due to Unavailability of the Database", "githuburl":"" }, { "uri":"obs_03_0445.html", + "node_id":"obs_03_0445.xml", "product_code":"obs", - "code":"197", + "code":"200", "des":"If a request fails to be processed due to errors, an error response is returned. An error response contains an error code and error details. Table 1 lists some common err", "doc_type":"usermanual", "kw":"List of OBS Error Codes,OBS Browser Operation Guide,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"List of OBS Error Codes", "githuburl":"" }, { "uri":"obs_faq_10000.html", + "node_id":"obs_faq_10000.xml", "product_code":"obs", - "code":"198", + "code":"201", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", - "kw":"FAQs", - "title":"FAQs", + "kw":"FAQ", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], + "title":"FAQ", "githuburl":"" }, { "uri":"obs_faq_0100.html", + "node_id":"obs_faq_0100.xml", "product_code":"obs", - "code":"199", + "code":"202", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"OBS Basics", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"OBS Basics", "githuburl":"" }, { "uri":"obs_faq_0032.html", + "node_id":"obs_faq_0032.xml", "product_code":"obs", - "code":"200", - "des":"Register an account, add a payment method, and you can start using OBS.If you use an IAM user, ensure that the user has been added to a user group that has the permission", + "code":"203", + "des":"Create an account, add a payment method, and you can start using OBS.If you use an IAM user, ensure that the user has been added to a user group that has the permissions ", "doc_type":"usermanual", - "kw":"How Can I Get Started Using OBS?,OBS Basics,User Guide", - "title":"How Can I Get Started Using OBS?", + "kw":"How Can I Get Started with OBS?,OBS Basics,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], + "title":"How Can I Get Started with OBS?", "githuburl":"" }, { "uri":"obs_faq_0124.html", + "node_id":"obs_faq_0124.xml", "product_code":"obs", - "code":"201", + "code":"204", "des":"You can access OBS through domain names. When you are using the API, third-party tools, or other methods to access OBS, you can use domain names to conveniently locate re", "doc_type":"usermanual", "kw":"How Do I Obtain an OBS Endpoint?,OBS Basics,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"How Do I Obtain an OBS Endpoint?", "githuburl":"" }, { "uri":"obs_faq_0006.html", + "node_id":"obs_faq_0006.xml", "product_code":"obs", - "code":"202", + "code":"205", "des":"SAN storage provides LUNs or volumes for applications. LUNs and volumes are forms of disk storage. Upper-layer applications use Fibre Channel or iSCSI protocols to access", "doc_type":"usermanual", "kw":"What Are the Advantages of Object Storage over SAN and NAS Storage?,OBS Basics,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"What Are the Advantages of Object Storage over SAN and NAS Storage?", "githuburl":"" }, { "uri":"obs_faq_0009.html", + "node_id":"obs_faq_0009.xml", "product_code":"obs", - "code":"203", + "code":"206", "des":"OBS can store all types of data.", "doc_type":"usermanual", "kw":"Which Types of Data Can Be Stored in OBS?,OBS Basics,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Which Types of Data Can Be Stored in OBS?", "githuburl":"" }, { "uri":"obs_faq_0010.html", + "node_id":"obs_faq_0010.xml", "product_code":"obs", - "code":"204", + "code":"207", "des":"There are no restrictions on the total capacity or number of objects or files that can be stored by the OBS system or in any single bucket. However, there are limitations", "doc_type":"usermanual", "kw":"How Much Data Can I Store in OBS?,OBS Basics,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"How Much Data Can I Store in OBS?", "githuburl":"" }, { "uri":"obs_faq_0111.html", + "node_id":"obs_faq_0111.xml", "product_code":"obs", - "code":"205", + "code":"208", "des":"Yes.On Cloud Eye, you can monitor the OBS metrics described in the following table.", "doc_type":"usermanual", "kw":"Does OBS Support Traffic Monitoring?,OBS Basics,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Does OBS Support Traffic Monitoring?", "githuburl":"" }, { "uri":"obs_faq_0016.html", + "node_id":"obs_faq_0016.xml", "product_code":"obs", - "code":"206", + "code":"209", "des":"No.OBS does not involve files or folders like in a file system. For your convenience, OBS provides a way to simulate folders. On OBS Console, you can simulate a folder by", "doc_type":"usermanual", "kw":"Can Folders in OBS Be Used the Same Way as in a File System?,OBS Basics,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Can Folders in OBS Be Used the Same Way as in a File System?", "githuburl":"" }, { "uri":"obs_faq_0018.html", + "node_id":"obs_faq_0018.xml", "product_code":"obs", - "code":"207", + "code":"210", "des":"When creating a bucket on OBS, you can specify a region for the bucket. Then your data on OBS is stored on multiple storage devices in this region.", "doc_type":"usermanual", "kw":"Where Is Data Stored in OBS?,OBS Basics,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Where Is Data Stored in OBS?", "githuburl":"" }, { "uri":"obs_03_0071.html", + "node_id":"obs_03_0071.xml", "product_code":"obs", - "code":"208", + "code":"211", "des":"Yes, OBS can be accessed over HTTPS.When accessing OBS using the allocated domain name, just replace http in the URL of the bucket or object with https in the browser.", "doc_type":"usermanual", "kw":"Does OBS Support Access over HTTPS?,OBS Basics,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Does OBS Support Access over HTTPS?", "githuburl":"" }, { "uri":"obs_faq_0125.html", + "node_id":"obs_faq_0125.xml", "product_code":"obs", - "code":"209", + "code":"212", "des":"Yes.Bucket ACLs and bucket policies can be used to grant other users read access to your buckets.You can grant other users read permissions for objects in your bucket by ", "doc_type":"usermanual", "kw":"Can Other Users Access My Data Stored in OBS?,OBS Basics,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Can Other Users Access My Data Stored in OBS?", "githuburl":"" }, { "uri":"obs_faq_0014.html", + "node_id":"obs_faq_0014.xml", "product_code":"obs", - "code":"210", + "code":"213", "des":"Resumable transfer is supported for all transfer methods except API.", "doc_type":"usermanual", - "kw":"Does OBS Support Resumable Data Transfer?,OBS Basics,User Guide", - "title":"Does OBS Support Resumable Data Transfer?", + "kw":"Does OBS Support Resumable Transfer?,OBS Basics,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], + "title":"Does OBS Support Resumable Transfer?", "githuburl":"" }, { "uri":"obs_faq_0015.html", + "node_id":"obs_faq_0015.xml", "product_code":"obs", - "code":"211", + "code":"214", "des":"The following table lists the batch upload support for different OBS tools.", "doc_type":"usermanual", "kw":"Does OBS Support Batch Upload?,OBS Basics,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Does OBS Support Batch Upload?", "githuburl":"" }, { "uri":"obs_faq_0047.html", + "node_id":"obs_faq_0047.xml", "product_code":"obs", - "code":"212", + "code":"215", "des":"The following table lists the batch download support for different OBS tools.", "doc_type":"usermanual", "kw":"Does OBS Support Batch Download?,OBS Basics,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Does OBS Support Batch Download?", "githuburl":"" }, { "uri":"obs_faq_0020.html", + "node_id":"obs_faq_0020.xml", "product_code":"obs", - "code":"213", + "code":"216", "des":"The following table lists the batch deletion support for different OBS tools.The batch deletion performance is negatively correlated with the number of objects in a singl", "doc_type":"usermanual", "kw":"Does OBS Support Batch Deletion of Objects?,OBS Basics,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Does OBS Support Batch Deletion of Objects?", "githuburl":"" }, { "uri":"obs_03_0100.html", + "node_id":"obs_03_0100.xml", "product_code":"obs", - "code":"214", + "code":"217", "des":"The OBS upload and download speed may be affected by:Upper limit of the read/write bandwidth allowed by a single accountDisk I/O, NICs, and resources consumed by other pr", "doc_type":"usermanual", - "kw":"What Are Factors that Affect the Upload and Download Speed of OBS?,OBS Basics,User Guide", - "title":"What Are Factors that Affect the Upload and Download Speed of OBS?", + "kw":"What Are the Factors That Affect Upload and Download Speed of OBS?,OBS Basics,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], + "title":"What Are the Factors That Affect Upload and Download Speed of OBS?", "githuburl":"" }, { "uri":"obs_03_0138.html", + "node_id":"obs_03_0138.xml", "product_code":"obs", - "code":"215", + "code":"218", "des":"Check whether there is a lifecycle rule configured to automatically delete objects after a certain date.Check whether the write permission to the bucket has been granted ", "doc_type":"usermanual", "kw":"Why Did Some of My Data Stored on OBS Get Lost?,OBS Basics,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Why Did Some of My Data Stored on OBS Get Lost?", "githuburl":"" }, { "uri":"obs_03_0139.html", + "node_id":"obs_03_0139.xml", "product_code":"obs", - "code":"216", + "code":"219", "des":"If versioning is enabled for a bucket, deleted objects are saved to the Deleted Objects list. You can recover objects from the Deleted Objects list. For details, see Unde", "doc_type":"usermanual", "kw":"Can Deleted Data Be Recovered?,OBS Basics,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Can Deleted Data Be Recovered?", "githuburl":"" }, { "uri":"obs_faq_0023.html", + "node_id":"obs_faq_0023.xml", "product_code":"obs", - "code":"217", + "code":"220", "des":"After you select the objects that you want to delete, OBS will delete the data completely, with nothing remaining. This protects against data leaks.", "doc_type":"usermanual", "kw":"Will There Be Data Left Over in OBS After I Delete an Object?,OBS Basics,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Will There Be Data Left Over in OBS After I Delete an Object?", "githuburl":"" }, { "uri":"obs_faq_0141.html", + "node_id":"obs_faq_0141.xml", "product_code":"obs", - "code":"218", + "code":"221", "des":"Yes. OBS buckets (version 3.0 and later) are Multi-AZ reliable. They can keep resource accessible in terms of force majeure such as natural disasters when an AZ is unavai", "doc_type":"usermanual", "kw":"Does OBS Provide Multi-AZ Reliability?,OBS Basics,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Does OBS Provide Multi-AZ Reliability?", "githuburl":"" }, { - "uri":"obs_faq_1100.html", + "uri":"obs_faq_0149.html", + "node_id":"obs_faq_0149.xml", "product_code":"obs", - "code":"219", + "code":"222", + "des":"No. OBS isolates the access from different accounts, so there is no performance interference or impact between different accounts.", + "doc_type":"usermanual", + "kw":"Will My Bucket Performance Be Affected by Other Users' Services?,OBS Basics,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], + "title":"Will My Bucket Performance Be Affected by Other Users' Services?", + "githuburl":"" + }, + { + "uri":"obs_faq_1100.html", + "node_id":"obs_faq_1100.xml", + "product_code":"obs", + "code":"223", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Access Control", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Access Control", "githuburl":"" }, { "uri":"obs_faq_0042.html", + "node_id":"obs_faq_0042.xml", "product_code":"obs", - "code":"220", + "code":"224", "des":"You can use the following mechanisms to control access to OBS.IAM policiesIAM policies define the actions that can be performed on your cloud resources, specifying what a", "doc_type":"usermanual", "kw":"How Can I Control Access to OBS?,Access Control,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"How Can I Control Access to OBS?", "githuburl":"" }, { "uri":"obs_faq_0054.html", + "node_id":"obs_faq_0054.xml", "product_code":"obs", - "code":"221", + "code":"225", "des":"IAM policies apply to cloud resources. With the OBS permissions, an IAM policy can be applied to all buckets and objects in OBS.A bucket policy only applies to the bucket", "doc_type":"usermanual", "kw":"What Are the Differences Between Using an IAM Policy and a Bucket Policy in Access Control?,Access C", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"What Are the Differences Between Using an IAM Policy and a Bucket Policy in Access Control?", "githuburl":"" }, { "uri":"obs_faq_0055.html", + "node_id":"obs_faq_0055.xml", "product_code":"obs", - "code":"222", + "code":"226", "des":"An object policy takes effect on only one object in a bucket. A bucket policy can be applied to multiple or all objects in a bucket.", "doc_type":"usermanual", "kw":"What Is the Relationship Between a Bucket Policy and an Object Policy?,Access Control,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"What Is the Relationship Between a Bucket Policy and an Object Policy?", "githuburl":"" }, { "uri":"obs_faq_1200.html", + "node_id":"obs_faq_1200.xml", "product_code":"obs", - "code":"223", + "code":"227", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Buckets and Objects", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Buckets and Objects", "githuburl":"" }, { "uri":"obs_faq_0138.html", + "node_id":"obs_faq_0138.xml", "product_code":"obs", - "code":"224", + "code":"228", "des":"If the number of buckets created by the current user reaches 100, delete some unneeded buckets first.If the name for the new bucket already exists, use another name and t", "doc_type":"usermanual", "kw":"Why Am I Unable to Create a Bucket?,Buckets and Objects,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Why Am I Unable to Create a Bucket?", "githuburl":"" }, { "uri":"obs_faq_0134.html", + "node_id":"obs_faq_0134.xml", "product_code":"obs", - "code":"225", - "des":"Check whether the network connectivity between the local computer and OBS is normal. If the network is down, restore the network connectivity.If a message indicating \"ser", + "code":"229", + "des":"Check whether the network connectivity between the local computer and OBS is normal. If the network is down, restore the network connection.If a message indicating \"servi", "doc_type":"usermanual", "kw":"Why Am I Unable to Upload an Object?,Buckets and Objects,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Why Am I Unable to Upload an Object?", "githuburl":"" }, { "uri":"obs_faq_0135.html", + "node_id":"obs_faq_0135.xml", "product_code":"obs", - "code":"226", - "des":"Check whether the network connectivity between the local computer and OBS is normal. If the network is down, restore the network connectivity.Check whether the account is", + "code":"230", + "des":"Check whether the network connectivity between the local computer and OBS is normal. If the network is down, restore the network connection.Check whether the account is i", "doc_type":"usermanual", "kw":"Why Am I Unable to Download an Object?,Buckets and Objects,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Why Am I Unable to Download an Object?", "githuburl":"" }, { "uri":"obs_faq_0064.html", + "node_id":"obs_faq_0064.xml", "product_code":"obs", - "code":"227", - "des":"Check whether the network connectivity between the local computer and OBS is normal. If the network is down, restore the network connectivity.Check whether all objects in", + "code":"231", + "des":"Check whether the network connectivity between the local computer and OBS is normal. If the network is down, restore the network connection.Check whether all objects in t", "doc_type":"usermanual", "kw":"Why Can't I Delete a Bucket?,Buckets and Objects,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Why Can't I Delete a Bucket?", "githuburl":"" }, { "uri":"obs_faq_0132.html", + "node_id":"obs_faq_0132.xml", "product_code":"obs", - "code":"228", + "code":"232", "des":"When an object is uploaded, it inherits the storage class of the bucket by default, but you can change the default storage class when you upload the object.Changing the s", "doc_type":"usermanual", "kw":"What Is the Relationship Between Bucket Storage Classes and Object Storage Classes?,Buckets and Obje", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"What Is the Relationship Between Bucket Storage Classes and Object Storage Classes?", "githuburl":"" }, { "uri":"obs_faq_0133.html", + "node_id":"obs_faq_0133.xml", "product_code":"obs", - "code":"229", + "code":"233", "des":"No. After a bucket is created, the region cannot be changed.", "doc_type":"usermanual", "kw":"Can I Modify the Region of a Bucket?,Buckets and Objects,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Can I Modify the Region of a Bucket?", "githuburl":"" }, { "uri":"obs_faq_0031.html", + "node_id":"obs_faq_0031.xml", "product_code":"obs", - "code":"230", + "code":"234", "des":"Object access paths use the following format: https://{bucket name}.{domain name}/{object name}. The following is an example: https://bucketname.obs.eu-de.otc.t-systems.c", "doc_type":"usermanual", "kw":"How Do I Obtain the Access Path to an Object?,Buckets and Objects,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"How Do I Obtain the Access Path to an Object?", "githuburl":"" }, { "uri":"obs_faq_0136.html", + "node_id":"obs_faq_0136.xml", "product_code":"obs", - "code":"231", + "code":"235", "des":"On OBS Console and OBS Browser, you can search for objects by object name prefix. For example, if you search for test, you will find all objects whose names start with te", "doc_type":"usermanual", - "kw":"Why Can't I Find Certain Objects in a Bucket When I Searched for Them?,Buckets and Objects,User Guid", - "title":"Why Can't I Find Certain Objects in a Bucket When I Searched for Them?", + "kw":"Why Can't I Search for Certain Objects in My Bucket?,Buckets and Objects,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], + "title":"Why Can't I Search for Certain Objects in My Bucket?", "githuburl":"" }, { "uri":"obs_faq_0200.html", + "node_id":"obs_faq_0200.xml", "product_code":"obs", - "code":"232", + "code":"236", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Security", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Security", "githuburl":"" }, { "uri":"obs_faq_0038.html", + "node_id":"obs_faq_0038.xml", "product_code":"obs", - "code":"233", + "code":"237", "des":"OBS is secure. It provides end-to-end security services. For example, if a bucket or an object is undisclosed when you access the bucket or object, only the owner of the ", "doc_type":"usermanual", "kw":"How Is Data Security Ensured in OBS?,Security,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"How Is Data Security Ensured in OBS?", "githuburl":"" }, { "uri":"obs_faq_0039.html", + "node_id":"obs_faq_0039.xml", "product_code":"obs", - "code":"234", + "code":"238", "des":"OBS only determines whether data blocks exist or are damaged (repairs data if damaged) by scanning for the data. It does not read specific data.", "doc_type":"usermanual", "kw":"Does OBS Scan My Data for Other Purposes?,Security,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Does OBS Scan My Data for Other Purposes?", "githuburl":"" }, { "uri":"obs_faq_0040.html", + "node_id":"obs_faq_0040.xml", "product_code":"obs", - "code":"235", + "code":"239", "des":"No. Background engineers cannot export your data. For example, if a bucket or an object is undisclosed when you access the bucket or object, only the owner of the bucket ", "doc_type":"usermanual", - "kw":"Can Background Engineers Export My Data from OBS?,Security,User Guide", - "title":"Can Background Engineers Export My Data from OBS?", + "kw":"Can Engineers Export My Data from the Background of OBS?,Security,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], + "title":"Can Engineers Export My Data from the Background of OBS?", "githuburl":"" }, { "uri":"obs_faq_0041.html", + "node_id":"obs_faq_0041.xml", "product_code":"obs", - "code":"236", + "code":"240", "des":"Only the owner of a bucket or an object can access it. Accessing a bucket or object requires access keys (AK/SK). In addition, multiple access control mechanisms such as ", "doc_type":"usermanual", - "kw":"How Does OBS Prevent My Data from Being Stolen?,Security,User Guide", - "title":"How Does OBS Prevent My Data from Being Stolen?", + "kw":"How Does OBS Protect My Data from Being Stolen?,Security,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], + "title":"How Does OBS Protect My Data from Being Stolen?", "githuburl":"" }, { "uri":"obs_faq_0043.html", + "node_id":"obs_faq_0043.xml", "product_code":"obs", - "code":"237", + "code":"241", "des":"Yes. The pair of AK and SK can be replaced at any time.", "doc_type":"usermanual", - "kw":"Can a Pair of AK and SK Be Replaced When They Are Being Used to Access OBS?,Security,User Guide", - "title":"Can a Pair of AK and SK Be Replaced When They Are Being Used to Access OBS?", + "kw":"Can a Pair of AK and SK Be Replaced When It Is Being Used to Access OBS?,Security,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], + "title":"Can a Pair of AK and SK Be Replaced When It Is Being Used to Access OBS?", "githuburl":"" }, { "uri":"obs_faq_0021.html", + "node_id":"obs_faq_0021.xml", "product_code":"obs", - "code":"238", + "code":"242", "des":"Yes. Different users can use the same pair of AK and SK to access the same resources in OBS.", "doc_type":"usermanual", - "kw":"Can a Pair of AK and SK Be Used by Multiple Users to Access OBS?,Security,User Guide", - "title":"Can a Pair of AK and SK Be Used by Multiple Users to Access OBS?", - "githuburl":"" - }, - { - "uri":"obs_faq_0044.html", - "product_code":"obs", - "code":"239", - "des":"Before uploading your data to OBS, you can encrypt the data to ensure security during transmission and storage. OBS support various encryption technologies used on client", - "doc_type":"usermanual", - "kw":"What Encryption Technologies Can I Use to Encrypt Data on OBS?,Security,User Guide", - "title":"What Encryption Technologies Can I Use to Encrypt Data on OBS?", + "kw":"Can Multiple Users Share One Pair of AK and SK to Access OBS?,Security,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], + "title":"Can Multiple Users Share One Pair of AK and SK to Access OBS?", "githuburl":"" }, { "uri":"obs_faq_0700.html", + "node_id":"obs_faq_0700.xml", "product_code":"obs", - "code":"240", + "code":"243", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"How Do I Use Fragment Management?", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"How Do I Use Fragment Management?", "githuburl":"" }, { "uri":"obs_faq_0037.html", + "node_id":"obs_faq_0037.xml", "product_code":"obs", - "code":"241", - "des":"Fragments are incomplete data in buckets generated due to data upload failures.Data can be uploaded to OBS using multipart uploads. Fragments are generated, if a multipar", + "code":"244", + "des":"Fragments are incomplete data in buckets generated due to data upload failures.Data can be uploaded to OBS using multipart uploads. There will be fragments generated, if ", "doc_type":"usermanual", "kw":"Why Are Fragments Generated?,How Do I Use Fragment Management?,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Why Are Fragments Generated?", "githuburl":"" }, { "uri":"obs_faq_0046.html", + "node_id":"obs_faq_0046.xml", "product_code":"obs", - "code":"242", + "code":"245", "des":"Generated fragments take up storage space that is billable.You can clear the fragments in a bucket on OBS Console or OBS Browser.If fragments are generated due to interru", "doc_type":"usermanual", "kw":"How Do I Manage Fragments?,How Do I Use Fragment Management?,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"How Do I Manage Fragments?", "githuburl":"" }, { "uri":"obs_faq_0800.html", + "node_id":"obs_faq_0800.xml", "product_code":"obs", - "code":"243", + "code":"246", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"How Do I Use Versioning?", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"How Do I Use Versioning?", "githuburl":"" }, { "uri":"obs_faq_0050.html", + "node_id":"obs_faq_0050.xml", "product_code":"obs", - "code":"244", + "code":"247", "des":"If versioning is enabled and an object is being uploaded, OBS automatically allocates a unique version ID to the object. Objects with the same name are stored in OBS with", "doc_type":"usermanual", "kw":"Can I Upload an Object to a Folder Where a Namesake Object Already Exists?,How Do I Use Versioning?,", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Can I Upload an Object to a Folder Where a Namesake Object Already Exists?", "githuburl":"" }, { "uri":"obs_faq_0045.html", + "node_id":"obs_faq_0045.xml", "product_code":"obs", - "code":"245", - "des":"When versioning is enabled, if you delete an object without specifying a version ID, OBS inserts a delete marker in the list of Deleted Objects. You can recover the objec", + "code":"248", + "des":"When versioning is enabled, if you delete an object without specifying a version ID, the object is tagged with a delete marker and displayed in the list of Deleted Object", "doc_type":"usermanual", "kw":"Can I Recover a Deleted Object?,How Do I Use Versioning?,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Can I Recover a Deleted Object?", "githuburl":"" }, { "uri":"obs_03_0038.html", + "node_id":"obs_03_0038.xml", "product_code":"obs", - "code":"246", + "code":"249", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"How Do I Use Tags?", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"How Do I Use Tags?", "githuburl":"" }, { "uri":"obs_03_0039.html", + "node_id":"obs_03_0039.xml", "product_code":"obs", - "code":"247", + "code":"250", "des":"Searching for buckets by tag is not supported by OBS. However, you can use Tag Management Service (TMS) to search for buckets by tag. For details, see Searching for Cloud", "doc_type":"usermanual", "kw":"Can I Search for a Bucket by Tag?,How Do I Use Tags?,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Can I Search for a Bucket by Tag?", "githuburl":"" }, { "uri":"obs_03_0040.html", + "node_id":"obs_03_0040.xml", "product_code":"obs", - "code":"248", + "code":"251", "des":"If you add tags to a bucket, service detail records (SDRs) generated for it will be labeled with these tags. You can classify SDRs by tag for cost analysis. For example, ", "doc_type":"usermanual", "kw":"What Can I Do with Tags?,How Do I Use Tags?,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"What Can I Do with Tags?", "githuburl":"" }, { "uri":"obs_faq_0900.html", + "node_id":"obs_faq_0900.xml", "product_code":"obs", - "code":"249", + "code":"252", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Event Notification", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Event Notification", "githuburl":"" }, { "uri":"obs_faq_0051.html", + "node_id":"obs_faq_0051.xml", "product_code":"obs", - "code":"250", + "code":"253", "des":"OBS supports notification for the following event types:ObjectCreated: Indicates all kinds of object creation operations, including PUT, POST, and COPY of objects, as wel", "doc_type":"usermanual", "kw":"Which Events Can Trigger Event Notifications?,Event Notification,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Which Events Can Trigger Event Notifications?", "githuburl":"" }, { "uri":"obs_faq_0400.html", + "node_id":"obs_faq_0400.xml", "product_code":"obs", - "code":"251", + "code":"254", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"How Do I Use Lifecycle Management?", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"How Do I Use Lifecycle Management?", "githuburl":"" }, { "uri":"obs_faq_0027.html", + "node_id":"obs_faq_0027.xml", "product_code":"obs", - "code":"252", - "des":"Lifecycle management applies to the following scenarios:Some periodically uploaded files need only to be retained for one week or one month, and can be deleted once they ", + "code":"255", + "des":"You may configure lifecycle rules to:Periodically delete logs that are only meant to be retained for a specific period of time (a week or a month).Transition documents th", "doc_type":"usermanual", "kw":"What Are the Application Scenarios of Lifecycle Management?,How Do I Use Lifecycle Management?,User ", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"What Are the Application Scenarios of Lifecycle Management?", "githuburl":"" }, { "uri":"obs_faq_0500.html", + "node_id":"obs_faq_0500.xml", "product_code":"obs", - "code":"253", + "code":"256", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"How Do I Use Static Website Hosting?", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"How Do I Use Static Website Hosting?", "githuburl":"" }, { "uri":"obs_faq_0028.html", + "node_id":"obs_faq_0028.xml", "product_code":"obs", - "code":"254", + "code":"257", "des":"OBS supports static website hosting. You can configure the static website hosting function for your buckets on OBS Console. When a client accesses objects from the websit", "doc_type":"usermanual", "kw":"Can OBS Host My Static Websites?,How Do I Use Static Website Hosting?,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Can OBS Host My Static Websites?", "githuburl":"" }, { "uri":"obs_faq_0029.html", + "node_id":"obs_faq_0029.xml", "product_code":"obs", - "code":"255", + "code":"258", "des":"Static websites contain static web pages and some scripts that can run on clients, such as JavaScript and Flash.", "doc_type":"usermanual", - "kw":"Which Types of Websites Are Suitable for Static Website Hosting in OBS?,How Do I Use Static Website ", - "title":"Which Types of Websites Are Suitable for Static Website Hosting in OBS?", + "kw":"Which Types of Websites Can I Use OBS to Host?,How Do I Use Static Website Hosting?,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], + "title":"Which Types of Websites Can I Use OBS to Host?", "githuburl":"" }, { "uri":"obs_faq_0030.html", + "node_id":"obs_faq_0030.xml", "product_code":"obs", - "code":"256", + "code":"259", "des":"You can obtain the static website hosting address of the bucket on OBS Console.You can also get the address according to the following rule and format. Address format: ht", "doc_type":"usermanual", "kw":"How Do I Obtain the Static Website Hosting Address of a Bucket?,How Do I Use Static Website Hosting?", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"How Do I Obtain the Static Website Hosting Address of a Bucket?", "githuburl":"" }, { "uri":"obs_03_0016.html", + "node_id":"obs_03_0016.xml", "product_code":"obs", - "code":"257", + "code":"260", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"How Do I Use Cross-Region Replication?", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"How Do I Use Cross-Region Replication?", "githuburl":"" }, { "uri":"obs_03_0018.html", + "node_id":"obs_03_0018.xml", "product_code":"obs", - "code":"258", + "code":"261", "des":"The same OBS resources need to be accessed in different locations. To minimize the access latency, you can use cross-region replication to create object copies in the nea", "doc_type":"usermanual", "kw":"What Are the Application Scenarios of Cross-Region Replication?,How Do I Use Cross-Region Replicatio", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"What Are the Application Scenarios of Cross-Region Replication?", "githuburl":"" }, { "uri":"obs_03_0017.html", + "node_id":"obs_03_0017.xml", "product_code":"obs", - "code":"259", + "code":"262", "des":"If you enable synchronous deletion, deleting an object in a source bucket will synchronously delete its copy in the destination bucket. If you do not enable this function", "doc_type":"usermanual", "kw":"Will an Object Deletion in a Source Bucket Be Synchronized to the Destination Bucket?,How Do I Use C", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Will an Object Deletion in a Source Bucket Be Synchronized to the Destination Bucket?", "githuburl":"" }, { "uri":"obs_faq_0137.html", + "node_id":"obs_faq_0137.xml", "product_code":"obs", - "code":"260", + "code":"263", "des":"If the function of synchronizing existing objects is not enabled for a cross-region replication rule, existing objects in a bucket will not be copied to the destination b", "doc_type":"usermanual", "kw":"Why Objects Are Not Copied to the Destination Bucket After the Cross-Region Replication Rule Has Bee", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Why Objects Are Not Copied to the Destination Bucket After the Cross-Region Replication Rule Has Been Created?", "githuburl":"" }, { - "uri":"obs_03_9999.html", + "uri":"obs_faq_1008.html", + "node_id":"obs_faq_1008.xml", "product_code":"obs", - "code":"261", + "code":"264", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Server-Side Encryption", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], + "title":"Server-Side Encryption", + "githuburl":"" + }, + { + "uri":"obs_faq_0044.html", + "node_id":"obs_faq_0044.xml", + "product_code":"obs", + "code":"265", + "des":"Before uploading your data to OBS, you can encrypt the data to ensure security during transmission and storage. OBS support various encryption technologies used on client", + "doc_type":"usermanual", + "kw":"What Encryption Technologies Can I Use to Encrypt Data on OBS?,Server-Side Encryption,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], + "title":"What Encryption Technologies Can I Use to Encrypt Data on OBS?", + "githuburl":"" + }, + { + "uri":"obs_03_9999.html", + "node_id":"obs_03_9999.xml", + "product_code":"obs", + "code":"266", "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "doc_type":"usermanual", "kw":"Change History,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Change History", "githuburl":"" }, { "uri":"obs_03_9998.html", + "node_id":"obs_03_9998.xml", "product_code":"obs", - "code":"262", + "code":"267", "des":"For details about the terms involved in this document, see Glossary.", "doc_type":"usermanual", "kw":"Glossary,User Guide", + "search_title":"", + "metedata":[ + { + "IsBot":"No", + "prodname":"obs", + "opensource":"true", + "documenttype":"usermanual" + } + ], "title":"Glossary", "githuburl":"" } diff --git a/docs/obs/umn/CLASS.TXT.json b/docs/obs/umn/CLASS.TXT.json index fc21cdab7..67f651eb7 100644 --- a/docs/obs/umn/CLASS.TXT.json +++ b/docs/obs/umn/CLASS.TXT.json @@ -18,7 +18,7 @@ "code":"2" }, { - "desc":"In this information era, it becomes increasingly difficult for conventional on-premises storage servers to deal with the fast growing data of enterprises. Table 1 compare", + "desc":"In this information era, it becomes increasingly difficult for conventional on-premises storage servers to deal with the fast-growing data of enterprises. Table 1 compare", "product_code":"obs", "title":"Advantages", "uri":"obs_03_0201.html", @@ -90,7 +90,7 @@ "code":"10" }, { - "desc":"Parallel File System (PFS), a sub-product of OBS, is a high-performance file system, with access latency in milliseconds. PFS can support a bandwidth performance up to th", + "desc":"Parallel File System (PFS) is a high-performance semantic file system provided by OBS. It features access latency in milliseconds, TB/s-level bandwidth, and millions of I", "product_code":"obs", "title":"Parallel File System", "uri":"obs_03_0150.html", @@ -144,7 +144,7 @@ "code":"16" }, { - "desc":"Table 1 lists the web browser versions supported by OBS Console.", + "desc":"Table 1 lists the web browser versions compatible with OBS Console.", "product_code":"obs", "title":"Restrictions", "uri":"obs_03_0301.html", @@ -225,7 +225,7 @@ "code":"25" }, { - "desc":"OBS supports tiered storage classes at the bucket level and object level.OBS provides the following storage classes: Standard, Warm, and Cold.Different storage classes me", + "desc":"OBS supports tiered storage classes at the bucket level and object level.OBS provides the following storage classes: Standard, Warm, and Cold.These storage classes can me", "product_code":"obs", "title":"Storage Classes Overview", "uri":"en-us_topic_0050937852.html", @@ -261,7 +261,7 @@ "code":"29" }, { - "desc":"You can search for a bucket by characters contained in its name.Currently, searching for buckets by tag is not supported.Buckets that meet the search criteria are display", + "desc":"You can search for a bucket by characters contained in its name.Currently, bucket search by tag is not supported.Buckets that meet the search criteria are displayed in th", "product_code":"obs", "title":"Searching for a Bucket", "uri":"obs_03_0313.html", @@ -306,7 +306,7 @@ "code":"34" }, { - "desc":"You can download files from OBS Console to the system default path or a custom download path of your local computer.Objects in the Cold storage class can be downloaded on", + "desc":"You can download files from OBS Console to the system default path or a custom download path on your local computer.Objects in the Cold storage class can be downloaded on", "product_code":"obs", "title":"Downloading an Object", "uri":"obs_03_0317.html", @@ -324,7 +324,7 @@ "code":"36" }, { - "desc":"This section describes how to search for a file or folder by name prefix on OBS Console.In the root directory of the bucket, files and folders whose name starts with the ", + "desc":"On OBS Console, you can search for files or folders by prefix.In the root directory of the bucket, files and folders whose name starts with the specified prefix are displ", "product_code":"obs", "title":"Searching for an Object or Folder", "uri":"obs_03_0318.html", @@ -342,7 +342,7 @@ "code":"38" }, { - "desc":"You must restore a Cold object before you can operate it, including download, access using a URL, as well as ACL and metadata settings.You cannot suspend or delete the re", + "desc":"You must restore a Cold object before you can download it, access it with a URL, or configure its ACL or metadata.If a Cold object is being restored, its restore task can", "product_code":"obs", "title":"Restoring Objects from the Cold Storage", "uri":"obs_03_0320.html", @@ -369,7 +369,7 @@ "code":"41" }, { - "desc":"Data can be uploaded to OBS using multipart uploads. Fragments are generated, if a multipart upload fails because of the following reasons (included but not limited to):T", + "desc":"Data can be uploaded to OBS using multipart uploads. There will be fragments generated, if a multipart upload fails because of the following causes (included but not limi", "product_code":"obs", "title":"Managing Fragments", "uri":"en-us_topic_0045853514.html", @@ -396,7 +396,7 @@ "code":"44" }, { - "desc":"OBS allows you to configure default encryption for a bucket. After the configuration, objects uploaded to this bucket are automatically encrypted using the specified KMS ", + "desc":"OBS allows you to configure default encryption for a bucket. After the default encryption is enabled for the bucket, objects uploaded to this bucket are automatically enc", "product_code":"obs", "title":"Bucket Default Encryption", "uri":"obs_03_0088.html", @@ -423,7 +423,7 @@ "code":"47" }, { - "desc":"Object metadata is a set of name-value pairs that are part of object management.Currently, only the metadata defined by the system is supported.The metadata defined by th", + "desc":"Object metadata is a set of name-value pairs that describe the object and is used for object management.Currently, only the metadata defined by the system is supported.Th", "product_code":"obs", "title":"Object Metadata Overview", "uri":"en-us_topic_0049066876.html", @@ -452,20 +452,47 @@ { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "product_code":"obs", - "title":"Permission Control", - "uri":"obs_03_0086.html", + "title":"Bucket Inventories", + "uri":"obs_03_0082.html", "doc_type":"usermanual", "p_code":"15", "code":"51" }, + { + "desc":"The bucket inventory function periodically generates lists of metadata information of objects in a bucket. Inventories help you better understand object statuses in the b", + "product_code":"obs", + "title":"Bucket Inventory Overview", + "uri":"obs_03_0083.html", + "doc_type":"usermanual", + "p_code":"51", + "code":"52" + }, + { + "desc":"OBS then automatically creates a bucket policy on the destination bucket to grant OBS permission to write inventory files to the bucket.", + "product_code":"obs", + "title":"Configuring a Bucket Inventory", + "uri":"obs_03_0084.html", + "doc_type":"usermanual", + "p_code":"51", + "code":"53" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"obs", + "title":"Permissions Control", + "uri":"obs_03_0086.html", + "doc_type":"usermanual", + "p_code":"15", + "code":"54" + }, { "desc":"OBS supports the following permission control mechanisms:IAM policies: IAM policies define the actions that can be performed on your cloud resources. In other words, IAM ", "product_code":"obs", "title":"Overview", "uri":"obs_03_0047.html", "doc_type":"usermanual", - "p_code":"51", - "code":"52" + "p_code":"54", + "code":"55" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -473,8 +500,8 @@ "title":"Permission Control Mechanisms", "uri":"obs_03_0109.html", "doc_type":"usermanual", - "p_code":"51", - "code":"53" + "p_code":"54", + "code":"56" }, { "desc":"You can create IAM users under a registered cloud service account, and then use IAM policies to control users' access permissions to cloud resources.IAM policies define t", @@ -482,8 +509,8 @@ "title":"IAM Policies", "uri":"obs_03_0110.html", "doc_type":"usermanual", - "p_code":"53", - "code":"54" + "p_code":"56", + "code":"57" }, { "desc":"The owner of a bucket is the account that created the bucket. If the bucket is created by an IAM user under the account, the bucket owner is the account instead of the IA", @@ -491,8 +518,8 @@ "title":"Bucket Policies and Object Policies", "uri":"en-us_topic_0045853745.html", "doc_type":"usermanual", - "p_code":"53", - "code":"55" + "p_code":"56", + "code":"58" }, { "desc":"Access control lists (ACLs) enable you to manage access to buckets and objects, and define grantees and their granted access permissions. Each bucket and object has its o", @@ -500,26 +527,26 @@ "title":"Bucket ACLs and Object ACLs", "uri":"en-us_topic_0066088967.html", "doc_type":"usermanual", - "p_code":"53", - "code":"56" + "p_code":"56", + "code":"59" }, { - "desc":"Bucket ACLs are used to control basic read and write access permissions for buckets. Custom settings of bucket policies support more actions that can be performed on buck", + "desc":"Bucket ACLs are used to control basic read and write access to buckets. Custom settings of bucket policies support more actions that can be performed on buckets. Bucket p", "product_code":"obs", "title":"Relationship Between a Bucket ACL and a Bucket Policy", "uri":"obs_03_0325.html", "doc_type":"usermanual", - "p_code":"53", - "code":"57" + "p_code":"56", + "code":"60" }, { - "desc":"Based on the least-privilege principle, decisions default to deny, and an explicit deny statement always takes precedence over an allow statement. For example, IAM polici", + "desc":"Based on the principle of least privilege, the default access control result is always deny, and an explicit deny statement always take precedence over an allow statement", "product_code":"obs", "title":"How Does Authorization Work When Multiple Access Control Mechanisms Co-Exist?", "uri":"obs_03_0114.html", "doc_type":"usermanual", - "p_code":"53", - "code":"58" + "p_code":"56", + "code":"61" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -527,35 +554,35 @@ "title":"Bucket Policy Parameters", "uri":"obs_03_0074.html", "doc_type":"usermanual", - "p_code":"51", - "code":"59" + "p_code":"54", + "code":"62" }, { - "desc":"A bucket policy can either allow or deny the access requests that match the configuration.Allow: The policy allows the matched requests.Deny: The policy denies the matche", + "desc":"A bucket policy can either allow or deny requests.Allow: The policy allows the matched requests.Deny: The policy denies the matched requests.When a bucket policy contains", "product_code":"obs", "title":"Effect", "uri":"obs_03_0115.html", "doc_type":"usermanual", - "p_code":"59", - "code":"60" + "p_code":"62", + "code":"63" }, { - "desc":"The principals indicate the users which the bucket policies apply to. These users can be accounts, federated users or federated user groups, and IAM users. Target users c", + "desc":"The principals indicate the users bucket policies apply to. These users can be accounts, federated users or federated user groups, and IAM users. Target users can be spec", "product_code":"obs", "title":"Principals", "uri":"obs_03_0049.html", "doc_type":"usermanual", - "p_code":"59", - "code":"61" + "p_code":"62", + "code":"64" }, { - "desc":"The resource can be the current entire bucket, an object, or a set of objects in the bucket.Resources can be specified in either of the following ways:Include: The policy", + "desc":"The resources a bucket policy is applied to can be the current entire bucket or objects in the bucket.Resources can be specified in either of the following ways:Include: ", "product_code":"obs", "title":"Resources", "uri":"obs_03_0118.html", "doc_type":"usermanual", - "p_code":"59", - "code":"62" + "p_code":"62", + "code":"65" }, { "desc":"Actions are related to resources. When the resource is the current bucket, bucket-related actions should be configured in a bucket policy. When objects are specified as r", @@ -563,17 +590,17 @@ "title":"Actions", "uri":"obs_03_0051.html", "doc_type":"usermanual", - "p_code":"59", - "code":"63" + "p_code":"62", + "code":"66" }, { - "desc":"In addition to the effect, principal, resources, and actions, you can also specify the conditions under which the bucket policy takes effect. A bucket policy takes effect", + "desc":"In addition to effect, principals, resources, and actions, you can specify conditions for a bucket policy. A bucket policy takes effect only when its condition expression", "product_code":"obs", "title":"Conditions", "uri":"obs_03_0120.html", "doc_type":"usermanual", - "p_code":"59", - "code":"64" + "p_code":"62", + "code":"67" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -581,8 +608,8 @@ "title":"Configuring IAM Policies", "uri":"obs_03_0144.html", "doc_type":"usermanual", - "p_code":"51", - "code":"65" + "p_code":"54", + "code":"68" }, { "desc":"A user group is a collection of users. By assigning permissions to a user group, you assign permissions to the users in this group. After you create an IAM user, add it t", @@ -590,8 +617,8 @@ "title":"Creating an IAM User and Granting OBS Permissions", "uri":"obs_03_0122.html", "doc_type":"usermanual", - "p_code":"65", - "code":"66" + "p_code":"68", + "code":"69" }, { "desc":"Custom policies can be created to supplement the system-defined policies of OBS.For details, see Creating a Custom Policy. The following provides examples of common OBS c", @@ -599,8 +626,8 @@ "title":"Configuring Fine-Grained Policies", "uri":"obs_03_0121.html", "doc_type":"usermanual", - "p_code":"65", - "code":"67" + "p_code":"68", + "code":"70" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -608,8 +635,8 @@ "title":"Configuring a Bucket Policy", "uri":"en-us_topic_0045853584.html", "doc_type":"usermanual", - "p_code":"51", - "code":"68" + "p_code":"54", + "code":"71" }, { "desc":"For standard bucket policy, OBS offers three options, namely the Private, Public Read, and Public Read and Write policies. These policies are pre-defined and can be appli", @@ -617,8 +644,8 @@ "title":"Configuring a Standard Bucket Policy", "uri":"obs_03_0142.html", "doc_type":"usermanual", - "p_code":"68", - "code":"69" + "p_code":"71", + "code":"72" }, { "desc":"If you want to grant special permissions to specific users, you can configure custom bucket policies. If a standard bucket policy conflicts with a custom bucket policy, t", @@ -626,8 +653,8 @@ "title":"Configuring a Custom Bucket Policy (Common Mode)", "uri":"obs_03_0123.html", "doc_type":"usermanual", - "p_code":"68", - "code":"70" + "p_code":"71", + "code":"73" }, { "desc":"You can configure a custom bucket policy by coding. The size of a custom bucket policy cannot exceed 20 KB.On the right of Custom Bucket Policies, select Coding mode to c", @@ -635,8 +662,8 @@ "title":"Configuring a Custom Bucket Policy (Coding Mode)", "uri":"obs_03_0141.html", "doc_type":"usermanual", - "p_code":"68", - "code":"71" + "p_code":"71", + "code":"74" }, { "desc":"Object policies are applied to the objects in a bucket. With an object policy, you can configure conditions and actions for objects in a bucket.Read-only: The authorized ", @@ -644,8 +671,8 @@ "title":"Configuring an Object Policy", "uri":"obs_03_0075.html", "doc_type":"usermanual", - "p_code":"51", - "code":"72" + "p_code":"54", + "code":"75" }, { "desc":"You are the bucket owner or you have the permission to write the bucket ACL.Enter an account ID or account name and specify ACL permissions for the account. You can obtai", @@ -653,8 +680,8 @@ "title":"Configuring a Bucket ACL", "uri":"obs_03_0326.html", "doc_type":"usermanual", - "p_code":"51", - "code":"73" + "p_code":"54", + "code":"76" }, { "desc":"You are the object owner or you have the permission to write the object ACL.An object owner is the account that uploads the object, but may not be the owner of the bucket", @@ -662,8 +689,8 @@ "title":"Configuring an Object ACL", "uri":"en-us_topic_0045853821.html", "doc_type":"usermanual", - "p_code":"51", - "code":"74" + "p_code":"54", + "code":"77" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -671,62 +698,62 @@ "title":"Application Cases", "uri":"obs_03_0127.html", "doc_type":"usermanual", - "p_code":"51", - "code":"75" + "p_code":"54", + "code":"78" }, { "desc":"Create an IAM user under in an account. The IAM user has no permission to any resource before it is added to any user group. The bucket owner (root account) or other acco", "product_code":"obs", - "title":"Granting an IAM User with the Operation Permissions for a Specified Bucket", + "title":"Granting an IAM User Permissions to Operate a Specific Bucket", "uri":"obs_03_0080.html", "doc_type":"usermanual", - "p_code":"75", - "code":"76" + "p_code":"78", + "code":"79" }, { "desc":"The bucket owner (root account) or other accounts and IAM users, who have the permission to set bucket policies, can configure bucket policies to grant the bucket operati", "product_code":"obs", - "title":"Granting Other Accounts with the Operation Permissions for a Specified Bucket", + "title":"Granting Other Accounts Permissions to Operate a Specific Bucket", "uri":"obs_03_0081.html", "doc_type":"usermanual", - "p_code":"75", - "code":"77" + "p_code":"78", + "code":"80" }, { - "desc":"You can configure a bucket policy to authorize a specified address the permission to access the bucket. This example shows how to deny a client access whose source IP add", + "desc":"You can configure a bucket policy to restrict access to a bucket for specific addresses. This example describes how to deny access from clients whose IP address is in the", "product_code":"obs", - "title":"Restricting Bucket Access to a Specified Address", + "title":"Restricting Access to a Bucket for Specific Addresses", "uri":"obs_03_0130.html", "doc_type":"usermanual", - "p_code":"75", - "code":"78" + "p_code":"78", + "code":"81" }, { "desc":"You can configure the bucket policy to limit the time when objects in a bucket are accessible. In the following example, the access time window is from 2019-03-26T12:00:0", "product_code":"obs", - "title":"Configuring the Start Time and End Time of Access to Objects in a Bucket", + "title":"Limiting the Time When Objects in a Bucket Are Accessible", "uri":"obs_03_0131.html", "doc_type":"usermanual", - "p_code":"75", - "code":"79" + "p_code":"78", + "code":"82" }, { "desc":"An enterprise stores a large volume of map data in OBS, and offers the data for public query. This enterprise sets a read permission for anonymous users, and provides the", "product_code":"obs", - "title":"Granting Object Access Permissions to Anonymous Users", + "title":"Granting Anonymous Users Permission to Access Objects", "uri":"obs_03_0132.html", "doc_type":"usermanual", - "p_code":"75", - "code":"80" + "p_code":"78", + "code":"83" }, { "desc":"If all objects in a folder need to be accessible to anonymous users, you can configure a bucket policy or an object policy to grant anonymous users the permission to acce", "product_code":"obs", - "title":"Authorizing Folder Access Permissions to Anonymous Users", + "title":"Granting Anonymous Users Permission to Access Folders", "uri":"obs_03_0096.html", "doc_type":"usermanual", - "p_code":"75", - "code":"81" + "p_code":"78", + "code":"84" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -735,7 +762,7 @@ "uri":"en-us_topic_0045853849.html", "doc_type":"usermanual", "p_code":"15", - "code":"82" + "code":"85" }, { "desc":"OBS can store multiple versions of an object. You can quickly search for and restore different versions or restore data in the event of accidental deletions or applicatio", @@ -743,17 +770,17 @@ "title":"Versioning Overview", "uri":"en-us_topic_0045853504.html", "doc_type":"usermanual", - "p_code":"82", - "code":"83" + "p_code":"85", + "code":"86" }, { - "desc":"After versioning is enabled, on the object details page that is displayed, click Versions, and then you can delete and download versions of the object.Download a desired ", + "desc":"After versioning is configured for a bucket, you can go to the object details page, click the Versions tab, and then delete and download object versions.Download a desire", "product_code":"obs", "title":"Configuring Versioning", "uri":"obs_03_0327.html", "doc_type":"usermanual", - "p_code":"82", - "code":"84" + "p_code":"85", + "code":"87" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -762,7 +789,7 @@ "uri":"obs_03_0328.html", "doc_type":"usermanual", "p_code":"15", - "code":"85" + "code":"88" }, { "desc":"You can enable logging to facilitate analysis or audit as required. Access logs enable a bucket owner to analyze the property, type, or trend of requests to the bucket in", @@ -770,8 +797,8 @@ "title":"Logging Overview", "uri":"en-us_topic_0045853553.html", "doc_type":"usermanual", - "p_code":"85", - "code":"86" + "p_code":"88", + "code":"89" }, { "desc":"After logging is enabled for a bucket, OBS automatically converts bucket logs into objects following the naming rules and writes the objects into a target bucket.After lo", @@ -779,8 +806,8 @@ "title":"Configuring Access Logging for a Bucket", "uri":"obs_03_0329.html", "doc_type":"usermanual", - "p_code":"85", - "code":"87" + "p_code":"88", + "code":"90" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -789,7 +816,7 @@ "uri":"obs_03_0330.html", "doc_type":"usermanual", "p_code":"15", - "code":"88" + "code":"91" }, { "desc":"Tags are used to identify and classify OBS buckets.If you add tags to a bucket, service detail records (SDRs) generated for it will be labeled with these tags. You can cl", @@ -797,17 +824,17 @@ "title":"Tag Overview", "uri":"en-us_topic_0059888284.html", "doc_type":"usermanual", - "p_code":"88", - "code":"89" + "p_code":"91", + "code":"92" }, { - "desc":"You can add tags to a bucket when creating the bucket. For details, see Creating a Bucket. Also you can add tags to a bucket after it has been created. This topic describ", + "desc":"When creating a bucket, you can add tags to it. For details, see Creating a Bucket. You can also add tags to a bucket after it has been created. This topic describes how ", "product_code":"obs", "title":"Configuring Tags for a Bucket", "uri":"obs_03_0331.html", "doc_type":"usermanual", - "p_code":"88", - "code":"90" + "p_code":"91", + "code":"93" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -816,7 +843,7 @@ "uri":"obs_03_0147.html", "doc_type":"usermanual", "p_code":"15", - "code":"91" + "code":"94" }, { "desc":"Simple Message Notification (SMN) is a reliable and extensible message notification service that can handle a huge number of messages. It significantly simplifies system ", @@ -824,8 +851,8 @@ "title":"SMN-Enabled Event Notifications", "uri":"en-us_topic_0045853816.html", "doc_type":"usermanual", - "p_code":"91", - "code":"92" + "p_code":"94", + "code":"95" }, { "desc":"This topic describes how to configure an SMN-enabled event notification rule on OBS Console.For details, see SMN-Enabled Event Notifications.Alternatively, you can choose", @@ -833,8 +860,8 @@ "title":"Configuring SMN-Enabled Event Notification", "uri":"en-us_topic_0066088963.html", "doc_type":"usermanual", - "p_code":"91", - "code":"93" + "p_code":"94", + "code":"96" }, { "desc":"An enterprise has a large number of files to archive but it does not want to cost much on storage resources. Therefore, the enterprise subscribes to OBS for storing files", @@ -842,8 +869,8 @@ "title":"Application Example: Configuring SMN-Enabled Event Notification", "uri":"obs_03_0333.html", "doc_type":"usermanual", - "p_code":"91", - "code":"94" + "p_code":"94", + "code":"97" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -852,7 +879,7 @@ "uri":"obs_03_0001.html", "doc_type":"usermanual", "p_code":"15", - "code":"95" + "code":"98" }, { "desc":"OBS offers disaster recovery across regions, catering to your needs for remote backup.Cross-region replication refers to the process of automatically and asynchronously r", @@ -860,17 +887,17 @@ "title":"Cross-Region Replication Overview", "uri":"obs_03_0002.html", "doc_type":"usermanual", - "p_code":"95", - "code":"96" + "p_code":"98", + "code":"99" }, { - "desc":"Currently, OBS allows you to configure a cross-region replication rule for copying all objects from a source bucket to a destination bucket or multiple cross-region repli", + "desc":"To replicate objects from a source bucket to a destination bucket in a different region, you can configure a single cross-region replication rule that is applied to all o", "product_code":"obs", "title":"Configuring Cross-Region Replication", "uri":"obs_03_0003.html", "doc_type":"usermanual", - "p_code":"95", - "code":"97" + "p_code":"98", + "code":"100" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -879,25 +906,25 @@ "uri":"obs_03_0334.html", "doc_type":"usermanual", "p_code":"15", - "code":"98" + "code":"101" }, { - "desc":"Lifecycle management means periodically deleting objects in a bucket or transitioning between object storage classes by configuring rules.Lifecycle management applies to ", + "desc":"Lifecycle management means periodically deleting objects in a bucket or transitioning between object storage classes by configuring rules.You may configure lifecycle rule", "product_code":"obs", "title":"Lifecycle Management Overview", "uri":"en-us_topic_0045853659.html", "doc_type":"usermanual", - "p_code":"98", - "code":"99" + "p_code":"101", + "code":"102" }, { - "desc":"You can configure a lifecycle rule for a bucket or for certain objects. With a lifecycle rule, you can transition objects from Standard to Warm or Cold, or from Warm to C", + "desc":"You can configure a lifecycle rule for a bucket or a set of objects to:Transition objects from Standard to Warm or Cold.Transition objects from Warm to Cold.Expire object", "product_code":"obs", "title":"Configuring a Lifecycle Rule", "uri":"obs_03_0335.html", "doc_type":"usermanual", - "p_code":"98", - "code":"100" + "p_code":"101", + "code":"103" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -906,7 +933,7 @@ "uri":"obs_03_0030.html", "doc_type":"usermanual", "p_code":"15", - "code":"101" + "code":"104" }, { "desc":"After you upload a file to a bucket, you can access this file using the bucket's access domain name by default. If you want to use a custom domain name to access the file", @@ -914,8 +941,8 @@ "title":"Overview", "uri":"obs_03_0031.html", "doc_type":"usermanual", - "p_code":"101", - "code":"102" + "p_code":"104", + "code":"105" }, { "desc":"The suffix of a user-defined domain name can contain 2 to 6 uppercase or lowercase letters.The CNAME configuration varies depending on DNS providers. For details, contact", @@ -923,8 +950,8 @@ "title":"Configuring a User-Defined Domain Name", "uri":"obs_03_0032.html", "doc_type":"usermanual", - "p_code":"101", - "code":"103" + "p_code":"104", + "code":"106" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -933,7 +960,7 @@ "uri":"obs_03_0336.html", "doc_type":"usermanual", "p_code":"15", - "code":"104" + "code":"107" }, { "desc":"You can upload the content files of static websites to your bucket on OBS, authorize anonymous users the permission to read these files, and configure static website host", @@ -941,8 +968,8 @@ "title":"Static Website Hosting Overview", "uri":"en-us_topic_0066036537.html", "doc_type":"usermanual", - "p_code":"104", - "code":"105" + "p_code":"107", + "code":"108" }, { "desc":"When using static website hosting, you can also configure redirection to redirect specific or all requests.If the structure, address, or file name extension of a website ", @@ -950,26 +977,26 @@ "title":"Redirection Overview", "uri":"obs_03_0337.html", "doc_type":"usermanual", - "p_code":"104", - "code":"106" + "p_code":"107", + "code":"109" }, { - "desc":"This section describes how to configure static website hosting for buckets and use bucket domain names to access static websites.The static website hosting takes effect w", + "desc":"You can configure static website hosting for a bucket and then use the bucket's domain name to access static websites hosted in the bucket.The configuration of static web", "product_code":"obs", "title":"Configuring Static Website Hosting", "uri":"en-us_topic_0045853755.html", "doc_type":"usermanual", - "p_code":"104", - "code":"107" + "p_code":"107", + "code":"110" }, { - "desc":"You can redirect all requests for a bucket to another bucket or URL by configuring redirection rules.Web page files of the static website have been uploaded to a bucket.T", + "desc":"You can redirect all requests for a bucket to another bucket or URL by configuring redirection rules.Web page files required for static website hosting have been uploaded", "product_code":"obs", "title":"Configuring Redirection", "uri":"en-us_topic_0066088957.html", "doc_type":"usermanual", - "p_code":"104", - "code":"108" + "p_code":"107", + "code":"111" }, { "desc":"OBS allows you to access static websites hosted by OBS using user-defined domain names. This section uses a specific scenario as an example to describe how to use a user-", @@ -977,8 +1004,8 @@ "title":"Using a User-Defined Domain Name to Configure Static Website Hosting", "uri":"obs_03_0338.html", "doc_type":"usermanual", - "p_code":"104", - "code":"109" + "p_code":"107", + "code":"112" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -987,7 +1014,7 @@ "uri":"obs_03_0339.html", "doc_type":"usermanual", "p_code":"15", - "code":"110" + "code":"113" }, { "desc":"CORS is a browser-standard mechanism provided by the World Wide Web Consortium (W3C). It defines the interaction methods between client-side web applications in one origi", @@ -995,8 +1022,8 @@ "title":"CORS Overview", "uri":"en-us_topic_0045853680.html", "doc_type":"usermanual", - "p_code":"110", - "code":"111" + "p_code":"113", + "code":"114" }, { "desc":"This section describes how to use CORS in HTML5 to implement cross-origin access.Static website hosting has been configured. For details, see Configuring Static Website H", @@ -1004,8 +1031,8 @@ "title":"Configuring CORS", "uri":"en-us_topic_0066036542.html", "doc_type":"usermanual", - "p_code":"110", - "code":"112" + "p_code":"113", + "code":"115" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -1014,7 +1041,7 @@ "uri":"obs_03_0340.html", "doc_type":"usermanual", "p_code":"15", - "code":"113" + "code":"116" }, { "desc":"To reduce costs, some websites steal links from other websites to enrich their own contents. Link stealing not only damages interests of the original websites but also in", @@ -1022,8 +1049,8 @@ "title":"URL Validation Overview", "uri":"en-us_topic_0045853689.html", "doc_type":"usermanual", - "p_code":"113", - "code":"114" + "p_code":"116", + "code":"117" }, { "desc":"OBS blocks access requests from blacklisted URLs and allows those from whitelisted URLs.Static website hosting has been enabled.Principles for setting Referers:The length", @@ -1031,8 +1058,8 @@ "title":"Configuring URL Validation", "uri":"obs_03_0341.html", "doc_type":"usermanual", - "p_code":"113", - "code":"115" + "p_code":"116", + "code":"118" }, { "desc":"The requester-pays configuration allows the requester to pay for data transfer and API calls associated with accessing the requested OBS resources, while the bucket owner", @@ -1041,7 +1068,7 @@ "uri":"obs_03_0350.html", "doc_type":"usermanual", "p_code":"15", - "code":"116" + "code":"119" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -1050,16 +1077,16 @@ "uri":"obs_03_0008.html", "doc_type":"usermanual", "p_code":"15", - "code":"117" + "code":"120" }, { - "desc":"You may send PUT and GET requests continuously when using OBS, which generates upload and download traffic. You may also receive error responses from the server. Cloud Ey", + "desc":"In the use of OBS, you may send PUT and GET requests that generate upload and download traffic, or receive error responses from the server. To learn the requests, traffic", "product_code":"obs", "title":"Monitoring OBS", "uri":"obs_03_0009.html", "doc_type":"usermanual", - "p_code":"117", - "code":"118" + "p_code":"120", + "code":"121" }, { "desc":"This section defines the namespace, list, and dimensions of monitoring metrics reported by OBS to Cloud Eye. You can use the management console or APIs provided by Cloud ", @@ -1067,8 +1094,8 @@ "title":"OBS Monitoring Metrics", "uri":"obs_03_0010.html", "doc_type":"usermanual", - "p_code":"117", - "code":"119" + "p_code":"120", + "code":"122" }, { "desc":"Cloud Trace Service (CTS) records operations on cloud resources in your account. You can use the records to perform security analysis, track resource changes, audit compl", @@ -1077,7 +1104,7 @@ "uri":"obs_03_0020.html", "doc_type":"usermanual", "p_code":"15", - "code":"120" + "code":"123" }, { "desc":"When you delete or change the storage class of an object, the Task Management is displayed in the lower part of the console. You can manage tasks through Task Management.", @@ -1086,7 +1113,7 @@ "uri":"obs_03_0076.html", "doc_type":"usermanual", "p_code":"15", - "code":"121" + "code":"124" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -1095,7 +1122,7 @@ "uri":"obs_03_0036.html", "doc_type":"usermanual", "p_code":"15", - "code":"122" + "code":"125" }, { "desc":"To use some OBS features, you need to use IAM agencies to grant required permissions to OBS for processing your data.Click Modify Permissions in the row of the region whe", @@ -1103,8 +1130,8 @@ "title":"Creating an IAM Agency", "uri":"obs_03_0037.html", "doc_type":"usermanual", - "p_code":"122", - "code":"123" + "p_code":"125", + "code":"126" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -1113,7 +1140,7 @@ "uri":"obs_03_0342.html", "doc_type":"usermanual", "p_code":"15", - "code":"124" + "code":"127" }, { "desc":"A user logs in to OBS Console using Internet Explorer 11 and uploads an object. When the user attempts to download the object to the original path to replace the original", @@ -1121,8 +1148,8 @@ "title":"An Object Fails to Be Downloaded Using Internet Explorer 11", "uri":"obs_03_0343.html", "doc_type":"usermanual", - "p_code":"124", - "code":"125" + "p_code":"127", + "code":"128" }, { "desc":"Why OBS Console cannot be opened in Internet Explorer 9, even if the address of OBS Console can be pinged?Confirm whether Use SSL and Use TLS are selected in Internet Opt", @@ -1130,8 +1157,8 @@ "title":"OBS Console Cannot Be Opened in Internet Explorer 9", "uri":"obs_03_0344.html", "doc_type":"usermanual", - "p_code":"124", - "code":"126" + "p_code":"127", + "code":"129" }, { "desc":"After an object with a relatively long name is downloaded to a local path, the object name changes.For Windows, a file name, including the file name extension, can contai", @@ -1139,17 +1166,17 @@ "title":"The Object Name Changes After an Object with a Long Name Is Downloaded to a Local Computer", "uri":"obs_03_0345.html", "doc_type":"usermanual", - "p_code":"124", - "code":"127" + "p_code":"127", + "code":"130" }, { - "desc":"When configuring event notification on OBS, the user is prompted by the message \"OBS is not authorized to use this topic. Go to SMN to authorize OBS to use this topic.\"Go", + "desc":"During the configuration of event notifications on OBS, message \"OBS is not authorized to use this topic. Go to SMN to authorize OBS to use this topic.\" is displayed.Go t", "product_code":"obs", - "title":"Failed to Configure Event Notification", + "title":"Failed to Configure Event Notifications", "uri":"obs_03_0346.html", "doc_type":"usermanual", - "p_code":"124", - "code":"128" + "p_code":"127", + "code":"131" }, { "desc":"Error message \"Time difference is longer than 15 minutes between the client and server\" or \"The difference between the request time and the current time is too large\" is ", @@ -1157,8 +1184,8 @@ "title":"Time Difference Is Longer Than 15 Minutes Between the Client and Server", "uri":"obs_03_0347.html", "doc_type":"usermanual", - "p_code":"124", - "code":"129" + "p_code":"127", + "code":"132" }, { "desc":"If a request fails to be processed due to errors, an error response is returned. An error response contains an error code and error details. Table 1 lists some common err", @@ -1167,7 +1194,7 @@ "uri":"obs_03_0348.html", "doc_type":"usermanual", "p_code":"15", - "code":"130" + "code":"133" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -1176,7 +1203,7 @@ "uri":"obs_03_0400.html", "doc_type":"usermanual", "p_code":"", - "code":"131" + "code":"134" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -1184,8 +1211,8 @@ "title":"Introduction to OBS Browser", "uri":"obs_03_0401.html", "doc_type":"usermanual", - "p_code":"131", - "code":"132" + "p_code":"134", + "code":"135" }, { "desc":"OBS Browser is a client that runs on Windows systems. It can help you effortlessly manage object storage on your personal computers.Download OBS Browser. For details, see", @@ -1193,8 +1220,8 @@ "title":"OBS Browser Overview", "uri":"en-us_topic_0045853837.html", "doc_type":"usermanual", - "p_code":"132", - "code":"133" + "p_code":"135", + "code":"136" }, { "desc":"Table 1 describes the functions of OBS Browser:Function descriptionFunctionDescriptionBucket managementCreates and deletes buckets of different storage classes in specifi", @@ -1202,8 +1229,8 @@ "title":"Function Description", "uri":"obs_03_0402.html", "doc_type":"usermanual", - "p_code":"132", - "code":"134" + "p_code":"135", + "code":"137" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -1211,8 +1238,8 @@ "title":"Getting Started", "uri":"obs_03_0403.html", "doc_type":"usermanual", - "p_code":"131", - "code":"135" + "p_code":"134", + "code":"138" }, { "desc":"The follow-up sections describe how to complete the following tasks illustrated in Figure 1.Click in the upper right of the page, or right-click the bucket list or objec", @@ -1220,8 +1247,8 @@ "title":"Process Description", "uri":"obs_03_0064.html", "doc_type":"usermanual", - "p_code":"135", - "code":"136" + "p_code":"138", + "code":"139" }, { "desc":"If your cloud service account does not need individual IAM users, then you may skip this section. Your permissions to use OBS functions are not affected.If IAM users are ", @@ -1229,8 +1256,8 @@ "title":"Configuring User Permissions", "uri":"obs_03_0035.html", "doc_type":"usermanual", - "p_code":"135", - "code":"137" + "p_code":"138", + "code":"140" }, { "desc":"To download the package, click the OBS Browser package link on the homepage of OBS Console.Downloading an OBS Browser software package", @@ -1238,8 +1265,8 @@ "title":"Downloading OBS Browser", "uri":"en-us_topic_0045853783.html", "doc_type":"usermanual", - "p_code":"135", - "code":"138" + "p_code":"138", + "code":"141" }, { "desc":"This section describes how to create access keys (AK and SK) in OBS Console. A pair of AK and SK is used to encrypt the signature of a request, ensuring that the request ", @@ -1247,8 +1274,8 @@ "title":"Creating Access Keys (AK and SK)", "uri":"obs_03_0405.html", "doc_type":"usermanual", - "p_code":"135", - "code":"139" + "p_code":"138", + "code":"142" }, { "desc":"This section describes how to log in to OBS Browser.If you are starting OBS Browser for the first time, the Add Account dialog box is automatically displayed. Go directly", @@ -1256,8 +1283,8 @@ "title":"Logging In to OBS Browser", "uri":"en-us_topic_0045853477.html", "doc_type":"usermanual", - "p_code":"135", - "code":"140" + "p_code":"138", + "code":"143" }, { "desc":"A bucket is a container that stores objects in OBS. Before you store data in OBS, you need to create a bucket first.An account can create a maximum of 100 buckets and par", @@ -1265,8 +1292,8 @@ "title":"Adding a Bucket", "uri":"obs_03_0022.html", "doc_type":"usermanual", - "p_code":"135", - "code":"141" + "p_code":"138", + "code":"144" }, { "desc":"Files are uploaded in multiparts on OBS Browser. OBS Browser supports the upload of a single file with the maximum size of 48.8 TB.OBS Browser supports resumable transfer", @@ -1274,8 +1301,8 @@ "title":"Uploading a File or Folder", "uri":"obs_03_0024.html", "doc_type":"usermanual", - "p_code":"135", - "code":"142" + "p_code":"138", + "code":"145" }, { "desc":"OBS Browser supports batch download. You can select multiple files or folders and click Download above the object list to download objects in batches.Before downloading C", @@ -1283,8 +1310,8 @@ "title":"Downloading a File or Folder", "uri":"obs_03_0025.html", "doc_type":"usermanual", - "p_code":"135", - "code":"143" + "p_code":"138", + "code":"146" }, { "desc":"Deleting a folder will delete all files in the folder. Ensure that all files in a folder are not needed before deleting the folder.OBS Browser supports batch deletion. Yo", @@ -1292,8 +1319,8 @@ "title":"Deleting a File or Folder", "uri":"obs_03_0026.html", "doc_type":"usermanual", - "p_code":"135", - "code":"144" + "p_code":"138", + "code":"147" }, { "desc":"You can delete unwanted buckets on OBS Console to free up the quota of buckets.All objects in the bucket have been deleted.This operation can be performed only by the buc", @@ -1301,17 +1328,17 @@ "title":"Deleting a Bucket", "uri":"obs_03_0027.html", "doc_type":"usermanual", - "p_code":"135", - "code":"145" + "p_code":"138", + "code":"148" }, { - "desc":"OBS supports tiered storage classes at the bucket level and object level.OBS provides the following storage classes: Standard, Warm, and Cold.Different storage classes me", + "desc":"OBS supports tiered storage classes at the bucket level and object level.OBS provides the following storage classes: Standard, Warm, and Cold.These storage classes can me", "product_code":"obs", "title":"Storage Classes Overview", "uri":"obs_03_0012.html", "doc_type":"usermanual", - "p_code":"131", - "code":"146" + "p_code":"134", + "code":"149" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -1319,8 +1346,8 @@ "title":"Managing Buckets", "uri":"obs_03_0406.html", "doc_type":"usermanual", - "p_code":"131", - "code":"147" + "p_code":"134", + "code":"150" }, { "desc":"OBS Browser supports three methods of bucket management.You can click the button above the bucket list to manage buckets.Also, you can click the blank area in the row whe", @@ -1328,17 +1355,17 @@ "title":"Bucket Management Methods", "uri":"obs_03_0059.html", "doc_type":"usermanual", - "p_code":"147", - "code":"148" + "p_code":"150", + "code":"151" }, { - "desc":"Buckets are containers that store objects in OBS. Before you store data in OBS, you need to create buckets.An account can create a maximum of 100 buckets and parallel fil", + "desc":"Buckets are containers that store objects in OBS. Before you can store data in OBS, you must create a bucket.An account can create a maximum of 100 buckets and parallel f", "product_code":"obs", "title":"Adding a Bucket", "uri":"obs_03_0407.html", "doc_type":"usermanual", - "p_code":"147", - "code":"149" + "p_code":"150", + "code":"152" }, { "desc":"This section describes how to search for a bucket by entering characters contained in its name on OBS Browser.The found buckets are displayed in the bucket list. If you w", @@ -1346,8 +1373,8 @@ "title":"Searching for a Bucket", "uri":"obs_03_0408.html", "doc_type":"usermanual", - "p_code":"147", - "code":"150" + "p_code":"150", + "code":"153" }, { "desc":"This section describes how to view basic information about a bucket, including the owner, capacity, location, and object quantity using OBS Browser.The statistics of Used", @@ -1355,8 +1382,8 @@ "title":"Viewing Basic Information of a Bucket", "uri":"obs_03_0409.html", "doc_type":"usermanual", - "p_code":"147", - "code":"151" + "p_code":"150", + "code":"154" }, { "desc":"Data can be uploaded to OBS using multipart uploads. Fragments are generated, if a multipart upload fails because of the following reasons (included but not limited to):T", @@ -1364,8 +1391,8 @@ "title":"Managing Fragments", "uri":"en-us_topic_0045853710.html", "doc_type":"usermanual", - "p_code":"147", - "code":"152" + "p_code":"150", + "code":"155" }, { "desc":"You can delete unwanted buckets on OBS Console to free up the quota of buckets.All objects in the bucket have been deleted.This operation can be performed only by the buc", @@ -1373,8 +1400,8 @@ "title":"Deleting a Bucket", "uri":"obs_03_0411.html", "doc_type":"usermanual", - "p_code":"147", - "code":"153" + "p_code":"150", + "code":"156" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -1382,8 +1409,8 @@ "title":"Managing Objects", "uri":"obs_03_0412.html", "doc_type":"usermanual", - "p_code":"131", - "code":"154" + "p_code":"134", + "code":"157" }, { "desc":"OBS Browser supports three methods of object management.You can use the operation buttons above the object list to manage objects.Click the blank area in the row where th", @@ -1391,8 +1418,8 @@ "title":"Object Management Methods", "uri":"obs_03_0060.html", "doc_type":"usermanual", - "p_code":"154", - "code":"155" + "p_code":"157", + "code":"158" }, { "desc":"This section describes how to create a folder using OBS Browser.Unlike the file system, OBS does not involve the concepts of file and folder. For easy data management, OB", @@ -1400,8 +1427,8 @@ "title":"Creating a Folder", "uri":"obs_03_0413.html", "doc_type":"usermanual", - "p_code":"154", - "code":"156" + "p_code":"157", + "code":"159" }, { "desc":"Files are uploaded in multiparts on OBS Browser. OBS Browser supports the upload of a single file with the maximum size of 48.8 TB.OBS Browser supports resumable transfer", @@ -1409,8 +1436,8 @@ "title":"Uploading a File or Folder", "uri":"obs_03_0414.html", "doc_type":"usermanual", - "p_code":"154", - "code":"157" + "p_code":"157", + "code":"160" }, { "desc":"OBS Browser supports batch download. You can select multiple files or folders and click Download above the object list to download objects in batches.Before downloading C", @@ -1418,8 +1445,8 @@ "title":"Downloading a File or Folder", "uri":"obs_03_0415.html", "doc_type":"usermanual", - "p_code":"154", - "code":"158" + "p_code":"157", + "code":"161" }, { "desc":"The object uniform resource locator (URL) (object sharing) function allows anonymous users to access object data using object URLs.An anonymous user has been assigned wit", @@ -1427,8 +1454,8 @@ "title":"Accessing an Object Using Its Object URL", "uri":"obs_03_0416.html", "doc_type":"usermanual", - "p_code":"154", - "code":"159" + "p_code":"157", + "code":"162" }, { "desc":"This section describes how to search for a file or folder by name prefix on OBS Browser.In the root directory of the bucket, files and folders whose name starts with the ", @@ -1436,8 +1463,8 @@ "title":"Searching for a File or Folder", "uri":"obs_03_0417.html", "doc_type":"usermanual", - "p_code":"154", - "code":"160" + "p_code":"157", + "code":"163" }, { "desc":"This section describes how to delete a file or folder.Deleting a folder will delete all files in the folder. Ensure that all files in a folder can be deleted before delet", @@ -1445,8 +1472,8 @@ "title":"Deleting a File or Folder", "uri":"en-us_topic_0045853551.html", "doc_type":"usermanual", - "p_code":"154", - "code":"161" + "p_code":"157", + "code":"164" }, { "desc":"The Cold storage class is applicable to archiving rarely-accessed (such as once a year) data. The application scenarios include data archiving and long-term data retentio", @@ -1454,8 +1481,8 @@ "title":"Restoring a Cold File in OBS", "uri":"obs_03_0418.html", "doc_type":"usermanual", - "p_code":"154", - "code":"162" + "p_code":"157", + "code":"165" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -1463,8 +1490,8 @@ "title":"Server-Side Encryption", "uri":"obs_03_0419.html", "doc_type":"usermanual", - "p_code":"131", - "code":"163" + "p_code":"134", + "code":"166" }, { "desc":"After server-side encryption is enabled, objects to be uploaded will be encrypted and stored on the server. When objects are downloaded, they will be decrypted on the ser", @@ -1472,17 +1499,17 @@ "title":"Server-Side Encryption Overview", "uri":"obs_03_0420.html", "doc_type":"usermanual", - "p_code":"163", - "code":"164" + "p_code":"166", + "code":"167" }, { - "desc":"OBS allows users to encrypt objects on the server side so that the objects can be securely stored in OBS.In the region where the OBS is deployed, add the KMS Administrato", + "desc":"OBS allows you to encrypt objects on the server side so that the objects can be securely stored in OBS.The KMS Administrator permission has been granted for the region wh", "product_code":"obs", "title":"Uploading a File with Server-Side Encryption", "uri":"obs_03_0421.html", "doc_type":"usermanual", - "p_code":"163", - "code":"165" + "p_code":"166", + "code":"168" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -1490,8 +1517,8 @@ "title":"Permission Control", "uri":"obs_03_0140.html", "doc_type":"usermanual", - "p_code":"131", - "code":"166" + "p_code":"134", + "code":"169" }, { "desc":"OBS Browser supports permission control based on bucket policies, bucket ACLs, and object ACLs.Bucket policy: A bucket policy applies to the configured OBS bucket and obj", @@ -1499,26 +1526,26 @@ "title":"Overview", "uri":"obs_03_0062.html", "doc_type":"usermanual", - "p_code":"166", - "code":"167" + "p_code":"169", + "code":"170" }, { - "desc":"A bucket policy defines the access control policy of resources (buckets and objects) in OBS.The size of a bucket policy cannot exceed 20 KB.Table 1 describes the paramete", + "desc":"A bucket policy defines access control over resources (buckets and objects) in OBS.The size of a bucket policy cannot exceed 20 KB.Table 1 describes the parameters of buc", "product_code":"obs", "title":"Configuring a Bucket Policy", "uri":"en-us_topic_0045853707.html", "doc_type":"usermanual", - "p_code":"166", - "code":"168" + "p_code":"169", + "code":"171" }, { - "desc":"By configuring ACL, you can authorize bucket and ACL permissions to the Owner, Anonymous User, Registered User, or Log Delivery User groups.", + "desc":"You can configure a bucket ACL to grant permissions to the owner, anonymous users, registered users, or log delivery user groups.", "product_code":"obs", "title":"Configuring a Bucket ACL", "uri":"en-us_topic_0045853509.html", "doc_type":"usermanual", - "p_code":"166", - "code":"169" + "p_code":"169", + "code":"172" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -1526,17 +1553,17 @@ "title":"Lifecycle Management", "uri":"obs_03_0424.html", "doc_type":"usermanual", - "p_code":"131", - "code":"170" + "p_code":"134", + "code":"173" }, { - "desc":"Lifecycle management means periodically deleting objects in a bucket or transitioning between object storage classes by configuring rules.Lifecycle management applies to ", + "desc":"Lifecycle management means periodically deleting objects in a bucket or transitioning between object storage classes by configuring rules.You may configure lifecycle rule", "product_code":"obs", "title":"Lifecycle Management Overview", "uri":"obs_03_0425.html", "doc_type":"usermanual", - "p_code":"170", - "code":"171" + "p_code":"173", + "code":"174" }, { "desc":"You can configure a lifecycle management rule for a bucket, and applicable objects in the bucket will be managed by the rule.Basic Information:Status: Select Enable to en", @@ -1544,8 +1571,8 @@ "title":"Configuring a Lifecycle Rule", "uri":"en-us_topic_0045853854.html", "doc_type":"usermanual", - "p_code":"170", - "code":"172" + "p_code":"173", + "code":"175" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -1553,8 +1580,8 @@ "title":"CORS", "uri":"obs_03_0427.html", "doc_type":"usermanual", - "p_code":"131", - "code":"173" + "p_code":"134", + "code":"176" }, { "desc":"CORS is a browser-standard mechanism provided by the World Wide Web Consortium (W3C). It defines the interaction methods between client-side web applications in one origi", @@ -1562,8 +1589,8 @@ "title":"CORS Overview", "uri":"obs_03_0428.html", "doc_type":"usermanual", - "p_code":"173", - "code":"174" + "p_code":"176", + "code":"177" }, { "desc":"This section describes how to use CORS in HTML5 to implement cross-origin access.You can set a maximum of 100 CORS rules for one bucket.Table 1 describes parameters in CO", @@ -1571,8 +1598,8 @@ "title":"Configuring CORS", "uri":"en-us_topic_0045853860.html", "doc_type":"usermanual", - "p_code":"173", - "code":"175" + "p_code":"176", + "code":"178" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -1580,8 +1607,8 @@ "title":"Logging", "uri":"obs_03_0430.html", "doc_type":"usermanual", - "p_code":"131", - "code":"176" + "p_code":"134", + "code":"179" }, { "desc":"You can enable logging to facilitate analysis or audit as required. Access logs enable a bucket owner to analyze the property, type, or trend of requests to the bucket in", @@ -1589,17 +1616,17 @@ "title":"Logging Overview", "uri":"obs_03_0431.html", "doc_type":"usermanual", - "p_code":"176", - "code":"177" + "p_code":"179", + "code":"180" }, { - "desc":"After logging is enabled for a bucket, OBS automatically converts bucket logs into objects following the naming rules and writes the objects into a target bucket.The log ", + "desc":"After logging is enabled for a bucket, OBS automatically converts the bucket's logs into objects in a fixed naming format and then writes these objects into a destination", "product_code":"obs", "title":"Configuring Logging", "uri":"en-us_topic_0045853744.html", "doc_type":"usermanual", - "p_code":"176", - "code":"178" + "p_code":"179", + "code":"181" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -1607,8 +1634,8 @@ "title":"External Buckets", "uri":"obs_03_0433.html", "doc_type":"usermanual", - "p_code":"131", - "code":"179" + "p_code":"134", + "code":"182" }, { "desc":"The bucket owner can authorize other accounts the read and write access to the bucket. If you are authorized with such permissions, you can add the bucket on OBS Browser ", @@ -1616,8 +1643,8 @@ "title":"External Bucket Overview", "uri":"obs_03_0434.html", "doc_type":"usermanual", - "p_code":"179", - "code":"180" + "p_code":"182", + "code":"183" }, { "desc":"OBS Browser supports the external bucket adding function.You have obtained the permissions to read and write the external bucket that you want to add.For example: Account", @@ -1625,8 +1652,8 @@ "title":"Adding External Buckets", "uri":"en-us_topic_0045853737.html", "doc_type":"usermanual", - "p_code":"179", - "code":"181" + "p_code":"182", + "code":"184" }, { "desc":"A bucket ACL can be used to grant the read and write access to a bucket. If only the read access to the bucket is granted, the authorized user can only add the bucket and", @@ -1634,8 +1661,8 @@ "title":"Application Example 1: Authorizing Access Permissions Required for Adding an External Bucket Through the Bucket ACL", "uri":"obs_03_0134.html", "doc_type":"usermanual", - "p_code":"179", - "code":"182" + "p_code":"182", + "code":"185" }, { "desc":"A standard bucket policy can be used to grant the read and write access to a bucket. The standard bucket policy grants the public read and write access to the bucket, tha", @@ -1643,8 +1670,8 @@ "title":"Application Example 2: Authorizing Access Permissions Required for Adding an External Bucket Through the Standard Bucket Policy", "uri":"obs_03_0135.html", "doc_type":"usermanual", - "p_code":"179", - "code":"183" + "p_code":"182", + "code":"186" }, { "desc":"A custom bucket policy can be used to grant the read and write access permissions to the bucket to be added.If a custom bucket policy is used to authorize such permission", @@ -1652,8 +1679,8 @@ "title":"Application Example 3: Authorizing Access Permissions Required for Adding an External Bucket Through the Custom Bucket Policy", "uri":"obs_03_0136.html", "doc_type":"usermanual", - "p_code":"179", - "code":"184" + "p_code":"182", + "code":"187" }, { "desc":"OBS Browser supports the management of upload, download, deletion, and restoration tasks. You can suspend, cancel, or delete tasks using the task management function.If t", @@ -1661,8 +1688,8 @@ "title":"Task Management", "uri":"obs_03_0435.html", "doc_type":"usermanual", - "p_code":"131", - "code":"185" + "p_code":"134", + "code":"188" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -1670,8 +1697,8 @@ "title":"Related Operations", "uri":"obs_03_0028.html", "doc_type":"usermanual", - "p_code":"131", - "code":"186" + "p_code":"134", + "code":"189" }, { "desc":"This section describes how to modify system configurations.Table 1 describes the parameters that can be modified.", @@ -1679,8 +1706,8 @@ "title":"Configuring the System", "uri":"en-us_topic_0045853630.html", "doc_type":"usermanual", - "p_code":"186", - "code":"187" + "p_code":"189", + "code":"190" }, { "desc":"Account names on OBS Browser are used to distinguish one from another, which are irrelevant to the registered cloud service account. An OBS Browser account has one pair o", @@ -1688,8 +1715,8 @@ "title":"Managing Accounts", "uri":"en-us_topic_0045853764.html", "doc_type":"usermanual", - "p_code":"186", - "code":"188" + "p_code":"189", + "code":"191" }, { "desc":"This section describes how to update OBS Browser.Every time you log in to OBS Browser, the system automatically checks for update by default. If the current version is no", @@ -1697,8 +1724,8 @@ "title":"Updating OBS Browser", "uri":"obs_03_0438.html", "doc_type":"usermanual", - "p_code":"186", - "code":"189" + "p_code":"189", + "code":"192" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -1706,8 +1733,8 @@ "title":"Troubleshooting", "uri":"obs_03_0439.html", "doc_type":"usermanual", - "p_code":"131", - "code":"190" + "p_code":"134", + "code":"193" }, { "desc":"When a user attempts to log in to OBS Browser, the login page does not respond.Delete the obs folder in the AppData\\Local directory on the C drive to clear OBS Browser re", @@ -1715,8 +1742,8 @@ "title":"Login Page of OBS Browser Does Not Respond upon User Login", "uri":"obs_03_0440.html", "doc_type":"usermanual", - "p_code":"190", - "code":"191" + "p_code":"193", + "code":"194" }, { "desc":"Why is no upload task created and nothing displayed on the page after a large number of files are selected for upload using OBS Browser? For example, after a user logs in", @@ -1724,8 +1751,8 @@ "title":"No Upload Task Is Created After a Large Number of Files Are Selected for Upload On OBS Browser", "uri":"obs_03_0441.html", "doc_type":"usermanual", - "p_code":"190", - "code":"192" + "p_code":"193", + "code":"195" }, { "desc":"Why does blue or black screen of death occur when files are uploaded using OBS Browser?When OBS Browser is used to upload a large number of files or a few of big files, m", @@ -1733,8 +1760,8 @@ "title":"Blue or Black Screen of Death Occurs During File Upload on OBS Browser", "uri":"obs_03_0442.html", "doc_type":"usermanual", - "p_code":"190", - "code":"193" + "p_code":"193", + "code":"196" }, { "desc":"Why are the tasks not displayed in the task list when objects are being uploaded, downloaded, or deleted using OBS Browser?When OBS Browser is used to upload, download, o", @@ -1742,17 +1769,17 @@ "title":"Tasks Are Not Displayed in the Task List When Objects Are Managed Using OBS Browser", "uri":"obs_03_0443.html", "doc_type":"usermanual", - "p_code":"190", - "code":"194" + "p_code":"193", + "code":"197" }, { - "desc":"OBS is unavailable when an error is reported stating \"Time difference is longer than 15 minutes between the client and server.\"For security purposes, OBS checks the time ", + "desc":"OBS is unavailable when an error is reported stating that the time difference between the client and server is larger than 15 minutes.For security purposes, OBS checks th", "product_code":"obs", - "title":"Time Difference Is Longer Than 15 Minutes Between the Client and the Server", + "title":"Time Difference Is Longer Than 15 Minutes Between the Client and Server", "uri":"obs_03_0444.html", "doc_type":"usermanual", - "p_code":"190", - "code":"195" + "p_code":"193", + "code":"198" }, { "desc":"When starting OBS Browser on a Windows OS, an error occurs with the message displays as \"The task management function cannot work properly because the database is unavail", @@ -1760,8 +1787,8 @@ "title":"An Error Occurs During the Start-up of OBS Browser, Indicating That the Task Management Function Cannot Work Properly Due to Unavailability of the Database", "uri":"obs_03_0145.html", "doc_type":"usermanual", - "p_code":"190", - "code":"196" + "p_code":"193", + "code":"199" }, { "desc":"If a request fails to be processed due to errors, an error response is returned. An error response contains an error code and error details. Table 1 lists some common err", @@ -1769,17 +1796,17 @@ "title":"List of OBS Error Codes", "uri":"obs_03_0445.html", "doc_type":"usermanual", - "p_code":"131", - "code":"197" + "p_code":"134", + "code":"200" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "product_code":"obs", - "title":"FAQs", + "title":"FAQ", "uri":"obs_faq_10000.html", "doc_type":"usermanual", "p_code":"", - "code":"198" + "code":"201" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -1787,17 +1814,17 @@ "title":"OBS Basics", "uri":"obs_faq_0100.html", "doc_type":"usermanual", - "p_code":"198", - "code":"199" + "p_code":"201", + "code":"202" }, { - "desc":"Register an account, add a payment method, and you can start using OBS.If you use an IAM user, ensure that the user has been added to a user group that has the permission", + "desc":"Create an account, add a payment method, and you can start using OBS.If you use an IAM user, ensure that the user has been added to a user group that has the permissions ", "product_code":"obs", - "title":"How Can I Get Started Using OBS?", + "title":"How Can I Get Started with OBS?", "uri":"obs_faq_0032.html", "doc_type":"usermanual", - "p_code":"199", - "code":"200" + "p_code":"202", + "code":"203" }, { "desc":"You can access OBS through domain names. When you are using the API, third-party tools, or other methods to access OBS, you can use domain names to conveniently locate re", @@ -1805,8 +1832,8 @@ "title":"How Do I Obtain an OBS Endpoint?", "uri":"obs_faq_0124.html", "doc_type":"usermanual", - "p_code":"199", - "code":"201" + "p_code":"202", + "code":"204" }, { "desc":"SAN storage provides LUNs or volumes for applications. LUNs and volumes are forms of disk storage. Upper-layer applications use Fibre Channel or iSCSI protocols to access", @@ -1814,8 +1841,8 @@ "title":"What Are the Advantages of Object Storage over SAN and NAS Storage?", "uri":"obs_faq_0006.html", "doc_type":"usermanual", - "p_code":"199", - "code":"202" + "p_code":"202", + "code":"205" }, { "desc":"OBS can store all types of data.", @@ -1823,8 +1850,8 @@ "title":"Which Types of Data Can Be Stored in OBS?", "uri":"obs_faq_0009.html", "doc_type":"usermanual", - "p_code":"199", - "code":"203" + "p_code":"202", + "code":"206" }, { "desc":"There are no restrictions on the total capacity or number of objects or files that can be stored by the OBS system or in any single bucket. However, there are limitations", @@ -1832,8 +1859,8 @@ "title":"How Much Data Can I Store in OBS?", "uri":"obs_faq_0010.html", "doc_type":"usermanual", - "p_code":"199", - "code":"204" + "p_code":"202", + "code":"207" }, { "desc":"Yes.On Cloud Eye, you can monitor the OBS metrics described in the following table.", @@ -1841,8 +1868,8 @@ "title":"Does OBS Support Traffic Monitoring?", "uri":"obs_faq_0111.html", "doc_type":"usermanual", - "p_code":"199", - "code":"205" + "p_code":"202", + "code":"208" }, { "desc":"No.OBS does not involve files or folders like in a file system. For your convenience, OBS provides a way to simulate folders. On OBS Console, you can simulate a folder by", @@ -1850,8 +1877,8 @@ "title":"Can Folders in OBS Be Used the Same Way as in a File System?", "uri":"obs_faq_0016.html", "doc_type":"usermanual", - "p_code":"199", - "code":"206" + "p_code":"202", + "code":"209" }, { "desc":"When creating a bucket on OBS, you can specify a region for the bucket. Then your data on OBS is stored on multiple storage devices in this region.", @@ -1859,8 +1886,8 @@ "title":"Where Is Data Stored in OBS?", "uri":"obs_faq_0018.html", "doc_type":"usermanual", - "p_code":"199", - "code":"207" + "p_code":"202", + "code":"210" }, { "desc":"Yes, OBS can be accessed over HTTPS.When accessing OBS using the allocated domain name, just replace http in the URL of the bucket or object with https in the browser.", @@ -1868,8 +1895,8 @@ "title":"Does OBS Support Access over HTTPS?", "uri":"obs_03_0071.html", "doc_type":"usermanual", - "p_code":"199", - "code":"208" + "p_code":"202", + "code":"211" }, { "desc":"Yes.Bucket ACLs and bucket policies can be used to grant other users read access to your buckets.You can grant other users read permissions for objects in your bucket by ", @@ -1877,17 +1904,17 @@ "title":"Can Other Users Access My Data Stored in OBS?", "uri":"obs_faq_0125.html", "doc_type":"usermanual", - "p_code":"199", - "code":"209" + "p_code":"202", + "code":"212" }, { "desc":"Resumable transfer is supported for all transfer methods except API.", "product_code":"obs", - "title":"Does OBS Support Resumable Data Transfer?", + "title":"Does OBS Support Resumable Transfer?", "uri":"obs_faq_0014.html", "doc_type":"usermanual", - "p_code":"199", - "code":"210" + "p_code":"202", + "code":"213" }, { "desc":"The following table lists the batch upload support for different OBS tools.", @@ -1895,8 +1922,8 @@ "title":"Does OBS Support Batch Upload?", "uri":"obs_faq_0015.html", "doc_type":"usermanual", - "p_code":"199", - "code":"211" + "p_code":"202", + "code":"214" }, { "desc":"The following table lists the batch download support for different OBS tools.", @@ -1904,8 +1931,8 @@ "title":"Does OBS Support Batch Download?", "uri":"obs_faq_0047.html", "doc_type":"usermanual", - "p_code":"199", - "code":"212" + "p_code":"202", + "code":"215" }, { "desc":"The following table lists the batch deletion support for different OBS tools.The batch deletion performance is negatively correlated with the number of objects in a singl", @@ -1913,17 +1940,17 @@ "title":"Does OBS Support Batch Deletion of Objects?", "uri":"obs_faq_0020.html", "doc_type":"usermanual", - "p_code":"199", - "code":"213" + "p_code":"202", + "code":"216" }, { "desc":"The OBS upload and download speed may be affected by:Upper limit of the read/write bandwidth allowed by a single accountDisk I/O, NICs, and resources consumed by other pr", "product_code":"obs", - "title":"What Are Factors that Affect the Upload and Download Speed of OBS?", + "title":"What Are the Factors That Affect Upload and Download Speed of OBS?", "uri":"obs_03_0100.html", "doc_type":"usermanual", - "p_code":"199", - "code":"214" + "p_code":"202", + "code":"217" }, { "desc":"Check whether there is a lifecycle rule configured to automatically delete objects after a certain date.Check whether the write permission to the bucket has been granted ", @@ -1931,8 +1958,8 @@ "title":"Why Did Some of My Data Stored on OBS Get Lost?", "uri":"obs_03_0138.html", "doc_type":"usermanual", - "p_code":"199", - "code":"215" + "p_code":"202", + "code":"218" }, { "desc":"If versioning is enabled for a bucket, deleted objects are saved to the Deleted Objects list. You can recover objects from the Deleted Objects list. For details, see Unde", @@ -1940,8 +1967,8 @@ "title":"Can Deleted Data Be Recovered?", "uri":"obs_03_0139.html", "doc_type":"usermanual", - "p_code":"199", - "code":"216" + "p_code":"202", + "code":"219" }, { "desc":"After you select the objects that you want to delete, OBS will delete the data completely, with nothing remaining. This protects against data leaks.", @@ -1949,8 +1976,8 @@ "title":"Will There Be Data Left Over in OBS After I Delete an Object?", "uri":"obs_faq_0023.html", "doc_type":"usermanual", - "p_code":"199", - "code":"217" + "p_code":"202", + "code":"220" }, { "desc":"Yes. OBS buckets (version 3.0 and later) are Multi-AZ reliable. They can keep resource accessible in terms of force majeure such as natural disasters when an AZ is unavai", @@ -1958,8 +1985,17 @@ "title":"Does OBS Provide Multi-AZ Reliability?", "uri":"obs_faq_0141.html", "doc_type":"usermanual", - "p_code":"199", - "code":"218" + "p_code":"202", + "code":"221" + }, + { + "desc":"No. OBS isolates the access from different accounts, so there is no performance interference or impact between different accounts.", + "product_code":"obs", + "title":"Will My Bucket Performance Be Affected by Other Users' Services?", + "uri":"obs_faq_0149.html", + "doc_type":"usermanual", + "p_code":"202", + "code":"222" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -1967,8 +2003,8 @@ "title":"Access Control", "uri":"obs_faq_1100.html", "doc_type":"usermanual", - "p_code":"198", - "code":"219" + "p_code":"201", + "code":"223" }, { "desc":"You can use the following mechanisms to control access to OBS.IAM policiesIAM policies define the actions that can be performed on your cloud resources, specifying what a", @@ -1976,8 +2012,8 @@ "title":"How Can I Control Access to OBS?", "uri":"obs_faq_0042.html", "doc_type":"usermanual", - "p_code":"219", - "code":"220" + "p_code":"223", + "code":"224" }, { "desc":"IAM policies apply to cloud resources. With the OBS permissions, an IAM policy can be applied to all buckets and objects in OBS.A bucket policy only applies to the bucket", @@ -1985,8 +2021,8 @@ "title":"What Are the Differences Between Using an IAM Policy and a Bucket Policy in Access Control?", "uri":"obs_faq_0054.html", "doc_type":"usermanual", - "p_code":"219", - "code":"221" + "p_code":"223", + "code":"225" }, { "desc":"An object policy takes effect on only one object in a bucket. A bucket policy can be applied to multiple or all objects in a bucket.", @@ -1994,8 +2030,8 @@ "title":"What Is the Relationship Between a Bucket Policy and an Object Policy?", "uri":"obs_faq_0055.html", "doc_type":"usermanual", - "p_code":"219", - "code":"222" + "p_code":"223", + "code":"226" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -2003,8 +2039,8 @@ "title":"Buckets and Objects", "uri":"obs_faq_1200.html", "doc_type":"usermanual", - "p_code":"198", - "code":"223" + "p_code":"201", + "code":"227" }, { "desc":"If the number of buckets created by the current user reaches 100, delete some unneeded buckets first.If the name for the new bucket already exists, use another name and t", @@ -2012,35 +2048,35 @@ "title":"Why Am I Unable to Create a Bucket?", "uri":"obs_faq_0138.html", "doc_type":"usermanual", - "p_code":"223", - "code":"224" + "p_code":"227", + "code":"228" }, { - "desc":"Check whether the network connectivity between the local computer and OBS is normal. If the network is down, restore the network connectivity.If a message indicating \"ser", + "desc":"Check whether the network connectivity between the local computer and OBS is normal. If the network is down, restore the network connection.If a message indicating \"servi", "product_code":"obs", "title":"Why Am I Unable to Upload an Object?", "uri":"obs_faq_0134.html", "doc_type":"usermanual", - "p_code":"223", - "code":"225" + "p_code":"227", + "code":"229" }, { - "desc":"Check whether the network connectivity between the local computer and OBS is normal. If the network is down, restore the network connectivity.Check whether the account is", + "desc":"Check whether the network connectivity between the local computer and OBS is normal. If the network is down, restore the network connection.Check whether the account is i", "product_code":"obs", "title":"Why Am I Unable to Download an Object?", "uri":"obs_faq_0135.html", "doc_type":"usermanual", - "p_code":"223", - "code":"226" + "p_code":"227", + "code":"230" }, { - "desc":"Check whether the network connectivity between the local computer and OBS is normal. If the network is down, restore the network connectivity.Check whether all objects in", + "desc":"Check whether the network connectivity between the local computer and OBS is normal. If the network is down, restore the network connection.Check whether all objects in t", "product_code":"obs", "title":"Why Can't I Delete a Bucket?", "uri":"obs_faq_0064.html", "doc_type":"usermanual", - "p_code":"223", - "code":"227" + "p_code":"227", + "code":"231" }, { "desc":"When an object is uploaded, it inherits the storage class of the bucket by default, but you can change the default storage class when you upload the object.Changing the s", @@ -2048,8 +2084,8 @@ "title":"What Is the Relationship Between Bucket Storage Classes and Object Storage Classes?", "uri":"obs_faq_0132.html", "doc_type":"usermanual", - "p_code":"223", - "code":"228" + "p_code":"227", + "code":"232" }, { "desc":"No. After a bucket is created, the region cannot be changed.", @@ -2057,8 +2093,8 @@ "title":"Can I Modify the Region of a Bucket?", "uri":"obs_faq_0133.html", "doc_type":"usermanual", - "p_code":"223", - "code":"229" + "p_code":"227", + "code":"233" }, { "desc":"Object access paths use the following format: https://{bucket name}.{domain name}/{object name}. The following is an example: https://bucketname.obs.eu-de.otc.t-systems.c", @@ -2066,17 +2102,17 @@ "title":"How Do I Obtain the Access Path to an Object?", "uri":"obs_faq_0031.html", "doc_type":"usermanual", - "p_code":"223", - "code":"230" + "p_code":"227", + "code":"234" }, { "desc":"On OBS Console and OBS Browser, you can search for objects by object name prefix. For example, if you search for test, you will find all objects whose names start with te", "product_code":"obs", - "title":"Why Can't I Find Certain Objects in a Bucket When I Searched for Them?", + "title":"Why Can't I Search for Certain Objects in My Bucket?", "uri":"obs_faq_0136.html", "doc_type":"usermanual", - "p_code":"223", - "code":"231" + "p_code":"227", + "code":"235" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -2084,8 +2120,8 @@ "title":"Security", "uri":"obs_faq_0200.html", "doc_type":"usermanual", - "p_code":"198", - "code":"232" + "p_code":"201", + "code":"236" }, { "desc":"OBS is secure. It provides end-to-end security services. For example, if a bucket or an object is undisclosed when you access the bucket or object, only the owner of the ", @@ -2093,8 +2129,8 @@ "title":"How Is Data Security Ensured in OBS?", "uri":"obs_faq_0038.html", "doc_type":"usermanual", - "p_code":"232", - "code":"233" + "p_code":"236", + "code":"237" }, { "desc":"OBS only determines whether data blocks exist or are damaged (repairs data if damaged) by scanning for the data. It does not read specific data.", @@ -2102,53 +2138,44 @@ "title":"Does OBS Scan My Data for Other Purposes?", "uri":"obs_faq_0039.html", "doc_type":"usermanual", - "p_code":"232", - "code":"234" + "p_code":"236", + "code":"238" }, { "desc":"No. Background engineers cannot export your data. For example, if a bucket or an object is undisclosed when you access the bucket or object, only the owner of the bucket ", "product_code":"obs", - "title":"Can Background Engineers Export My Data from OBS?", + "title":"Can Engineers Export My Data from the Background of OBS?", "uri":"obs_faq_0040.html", "doc_type":"usermanual", - "p_code":"232", - "code":"235" + "p_code":"236", + "code":"239" }, { "desc":"Only the owner of a bucket or an object can access it. Accessing a bucket or object requires access keys (AK/SK). In addition, multiple access control mechanisms such as ", "product_code":"obs", - "title":"How Does OBS Prevent My Data from Being Stolen?", + "title":"How Does OBS Protect My Data from Being Stolen?", "uri":"obs_faq_0041.html", "doc_type":"usermanual", - "p_code":"232", - "code":"236" + "p_code":"236", + "code":"240" }, { "desc":"Yes. The pair of AK and SK can be replaced at any time.", "product_code":"obs", - "title":"Can a Pair of AK and SK Be Replaced When They Are Being Used to Access OBS?", + "title":"Can a Pair of AK and SK Be Replaced When It Is Being Used to Access OBS?", "uri":"obs_faq_0043.html", "doc_type":"usermanual", - "p_code":"232", - "code":"237" + "p_code":"236", + "code":"241" }, { "desc":"Yes. Different users can use the same pair of AK and SK to access the same resources in OBS.", "product_code":"obs", - "title":"Can a Pair of AK and SK Be Used by Multiple Users to Access OBS?", + "title":"Can Multiple Users Share One Pair of AK and SK to Access OBS?", "uri":"obs_faq_0021.html", "doc_type":"usermanual", - "p_code":"232", - "code":"238" - }, - { - "desc":"Before uploading your data to OBS, you can encrypt the data to ensure security during transmission and storage. OBS support various encryption technologies used on client", - "product_code":"obs", - "title":"What Encryption Technologies Can I Use to Encrypt Data on OBS?", - "uri":"obs_faq_0044.html", - "doc_type":"usermanual", - "p_code":"232", - "code":"239" + "p_code":"236", + "code":"242" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -2156,17 +2183,17 @@ "title":"How Do I Use Fragment Management?", "uri":"obs_faq_0700.html", "doc_type":"usermanual", - "p_code":"198", - "code":"240" + "p_code":"201", + "code":"243" }, { - "desc":"Fragments are incomplete data in buckets generated due to data upload failures.Data can be uploaded to OBS using multipart uploads. Fragments are generated, if a multipar", + "desc":"Fragments are incomplete data in buckets generated due to data upload failures.Data can be uploaded to OBS using multipart uploads. There will be fragments generated, if ", "product_code":"obs", "title":"Why Are Fragments Generated?", "uri":"obs_faq_0037.html", "doc_type":"usermanual", - "p_code":"240", - "code":"241" + "p_code":"243", + "code":"244" }, { "desc":"Generated fragments take up storage space that is billable.You can clear the fragments in a bucket on OBS Console or OBS Browser.If fragments are generated due to interru", @@ -2174,8 +2201,8 @@ "title":"How Do I Manage Fragments?", "uri":"obs_faq_0046.html", "doc_type":"usermanual", - "p_code":"240", - "code":"242" + "p_code":"243", + "code":"245" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -2183,8 +2210,8 @@ "title":"How Do I Use Versioning?", "uri":"obs_faq_0800.html", "doc_type":"usermanual", - "p_code":"198", - "code":"243" + "p_code":"201", + "code":"246" }, { "desc":"If versioning is enabled and an object is being uploaded, OBS automatically allocates a unique version ID to the object. Objects with the same name are stored in OBS with", @@ -2192,53 +2219,53 @@ "title":"Can I Upload an Object to a Folder Where a Namesake Object Already Exists?", "uri":"obs_faq_0050.html", "doc_type":"usermanual", - "p_code":"243", - "code":"244" - }, - { - "desc":"When versioning is enabled, if you delete an object without specifying a version ID, OBS inserts a delete marker in the list of Deleted Objects. You can recover the objec", - "product_code":"obs", - "title":"Can I Recover a Deleted Object?", - "uri":"obs_faq_0045.html", - "doc_type":"usermanual", - "p_code":"243", - "code":"245" - }, - { - "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", - "product_code":"obs", - "title":"How Do I Use Tags?", - "uri":"obs_03_0038.html", - "doc_type":"usermanual", - "p_code":"198", - "code":"246" - }, - { - "desc":"Searching for buckets by tag is not supported by OBS. However, you can use Tag Management Service (TMS) to search for buckets by tag. For details, see Searching for Cloud", - "product_code":"obs", - "title":"Can I Search for a Bucket by Tag?", - "uri":"obs_03_0039.html", - "doc_type":"usermanual", "p_code":"246", "code":"247" }, { - "desc":"If you add tags to a bucket, service detail records (SDRs) generated for it will be labeled with these tags. You can classify SDRs by tag for cost analysis. For example, ", + "desc":"When versioning is enabled, if you delete an object without specifying a version ID, the object is tagged with a delete marker and displayed in the list of Deleted Object", "product_code":"obs", - "title":"What Can I Do with Tags?", - "uri":"obs_03_0040.html", + "title":"Can I Recover a Deleted Object?", + "uri":"obs_faq_0045.html", "doc_type":"usermanual", "p_code":"246", "code":"248" }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"obs", + "title":"How Do I Use Tags?", + "uri":"obs_03_0038.html", + "doc_type":"usermanual", + "p_code":"201", + "code":"249" + }, + { + "desc":"Searching for buckets by tag is not supported by OBS. However, you can use Tag Management Service (TMS) to search for buckets by tag. For details, see Searching for Cloud", + "product_code":"obs", + "title":"Can I Search for a Bucket by Tag?", + "uri":"obs_03_0039.html", + "doc_type":"usermanual", + "p_code":"249", + "code":"250" + }, + { + "desc":"If you add tags to a bucket, service detail records (SDRs) generated for it will be labeled with these tags. You can classify SDRs by tag for cost analysis. For example, ", + "product_code":"obs", + "title":"What Can I Do with Tags?", + "uri":"obs_03_0040.html", + "doc_type":"usermanual", + "p_code":"249", + "code":"251" + }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", "product_code":"obs", "title":"Event Notification", "uri":"obs_faq_0900.html", "doc_type":"usermanual", - "p_code":"198", - "code":"249" + "p_code":"201", + "code":"252" }, { "desc":"OBS supports notification for the following event types:ObjectCreated: Indicates all kinds of object creation operations, including PUT, POST, and COPY of objects, as wel", @@ -2246,8 +2273,8 @@ "title":"Which Events Can Trigger Event Notifications?", "uri":"obs_faq_0051.html", "doc_type":"usermanual", - "p_code":"249", - "code":"250" + "p_code":"252", + "code":"253" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -2255,17 +2282,17 @@ "title":"How Do I Use Lifecycle Management?", "uri":"obs_faq_0400.html", "doc_type":"usermanual", - "p_code":"198", - "code":"251" + "p_code":"201", + "code":"254" }, { - "desc":"Lifecycle management applies to the following scenarios:Some periodically uploaded files need only to be retained for one week or one month, and can be deleted once they ", + "desc":"You may configure lifecycle rules to:Periodically delete logs that are only meant to be retained for a specific period of time (a week or a month).Transition documents th", "product_code":"obs", "title":"What Are the Application Scenarios of Lifecycle Management?", "uri":"obs_faq_0027.html", "doc_type":"usermanual", - "p_code":"251", - "code":"252" + "p_code":"254", + "code":"255" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -2273,8 +2300,8 @@ "title":"How Do I Use Static Website Hosting?", "uri":"obs_faq_0500.html", "doc_type":"usermanual", - "p_code":"198", - "code":"253" + "p_code":"201", + "code":"256" }, { "desc":"OBS supports static website hosting. You can configure the static website hosting function for your buckets on OBS Console. When a client accesses objects from the websit", @@ -2282,17 +2309,17 @@ "title":"Can OBS Host My Static Websites?", "uri":"obs_faq_0028.html", "doc_type":"usermanual", - "p_code":"253", - "code":"254" + "p_code":"256", + "code":"257" }, { "desc":"Static websites contain static web pages and some scripts that can run on clients, such as JavaScript and Flash.", "product_code":"obs", - "title":"Which Types of Websites Are Suitable for Static Website Hosting in OBS?", + "title":"Which Types of Websites Can I Use OBS to Host?", "uri":"obs_faq_0029.html", "doc_type":"usermanual", - "p_code":"253", - "code":"255" + "p_code":"256", + "code":"258" }, { "desc":"You can obtain the static website hosting address of the bucket on OBS Console.You can also get the address according to the following rule and format. Address format: ht", @@ -2300,8 +2327,8 @@ "title":"How Do I Obtain the Static Website Hosting Address of a Bucket?", "uri":"obs_faq_0030.html", "doc_type":"usermanual", - "p_code":"253", - "code":"256" + "p_code":"256", + "code":"259" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -2309,8 +2336,8 @@ "title":"How Do I Use Cross-Region Replication?", "uri":"obs_03_0016.html", "doc_type":"usermanual", - "p_code":"198", - "code":"257" + "p_code":"201", + "code":"260" }, { "desc":"The same OBS resources need to be accessed in different locations. To minimize the access latency, you can use cross-region replication to create object copies in the nea", @@ -2318,8 +2345,8 @@ "title":"What Are the Application Scenarios of Cross-Region Replication?", "uri":"obs_03_0018.html", "doc_type":"usermanual", - "p_code":"257", - "code":"258" + "p_code":"260", + "code":"261" }, { "desc":"If you enable synchronous deletion, deleting an object in a source bucket will synchronously delete its copy in the destination bucket. If you do not enable this function", @@ -2327,8 +2354,8 @@ "title":"Will an Object Deletion in a Source Bucket Be Synchronized to the Destination Bucket?", "uri":"obs_03_0017.html", "doc_type":"usermanual", - "p_code":"257", - "code":"259" + "p_code":"260", + "code":"262" }, { "desc":"If the function of synchronizing existing objects is not enabled for a cross-region replication rule, existing objects in a bucket will not be copied to the destination b", @@ -2336,8 +2363,26 @@ "title":"Why Objects Are Not Copied to the Destination Bucket After the Cross-Region Replication Rule Has Been Created?", "uri":"obs_faq_0137.html", "doc_type":"usermanual", - "p_code":"257", - "code":"260" + "p_code":"260", + "code":"263" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"obs", + "title":"Server-Side Encryption", + "uri":"obs_faq_1008.html", + "doc_type":"usermanual", + "p_code":"201", + "code":"264" + }, + { + "desc":"Before uploading your data to OBS, you can encrypt the data to ensure security during transmission and storage. OBS support various encryption technologies used on client", + "product_code":"obs", + "title":"What Encryption Technologies Can I Use to Encrypt Data on OBS?", + "uri":"obs_faq_0044.html", + "doc_type":"usermanual", + "p_code":"264", + "code":"265" }, { "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", @@ -2346,7 +2391,7 @@ "uri":"obs_03_9999.html", "doc_type":"usermanual", "p_code":"", - "code":"261" + "code":"266" }, { "desc":"For details about the terms involved in this document, see Glossary.", @@ -2355,6 +2400,6 @@ "uri":"obs_03_9998.html", "doc_type":"usermanual", "p_code":"", - "code":"262" + "code":"267" } ] \ No newline at end of file diff --git a/docs/obs/umn/en-us_image_0000001730497813.png b/docs/obs/umn/en-us_image_0000001730497813.png new file mode 100644 index 0000000000000000000000000000000000000000..126dcf6fa1b19b6dfa67658a84f0b3194e51c916 GIT binary patch literal 422 zcmV;X0a^ZuP)xFX2Sfi3Li0{Gk zmR=uBD4bUCE#L-O6kG%S0EF}zllx$(K%w2}2CzoXCr}bWmMv~o?HUEa{7Z15MB~6- z1h?6KbQVOJ#hFGS=w-hst>^`C0TB%6NfT67H~j{U_xM}`A&#xtXdayNG5T2DifeFK zC!j+CGHDik7Tly~**KJebHCIer9;--Y&i?g`C!c43S}CAtL@(cZzeS!P+XySw9bKk>&-q2=ut+545%|?B)sz QoB#j-07*qoM6N<$f=3^^ng9R* literal 0 HcmV?d00001 diff --git a/docs/obs/umn/en-us_image_0145846362.png b/docs/obs/umn/en-us_image_0000001801955289.png similarity index 100% rename from docs/obs/umn/en-us_image_0145846362.png rename to docs/obs/umn/en-us_image_0000001801955289.png diff --git a/docs/obs/umn/en-us_image_0145847198.png b/docs/obs/umn/en-us_image_0145847198.png deleted file mode 100644 index 81b8fd76fb9011014786e8b3a68391eb89661849..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36775 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%0DpD(a~4}piYrvv9&qlch} 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

;0{PJ3Z=$YtSCzYB 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≪7fW_;toFu*JjVKfh4h>Jy#N-rmqpV;}ri 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%0DD|F6vm5*1)ur)!m-R^lv;L2ZF0 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

`u~S}1c~@@yXHuEBTWp-X{P?bG zb4KwO8%8pB9HPh%6iRCI;3f35sC++5d8!*eK0ynB6IM!UsV3>XF`GWuxLf^;NXqvL zs>ncZ8yO#qQidt~P$Q4@CT!pGJle~_ZJt!Tk3J8N0u@jvdncA8t$e!3!3w0=&OCx# z=h}{88Q-?<&NBb0XLpSU=;{sR0Z%}{P6T{hIVmqwAKcS8-K?~m6r_DWOA@eft%3hz zL;S|;hJb)gZk($zne}(4_qn^qe{f@hmz@ibQY)g15HTIwk*8c z$|3Rac5yM~oBc>4;o;zzv!?0&nuH0@5lMl(q9!_=_7~TrNJ^XsyCg>G*u* zv^}#LlKiFnkl>q(8rir-?F+lH5}pwMDR037p5qzfSONtWC1d5!;uu3PoF|My&c*VV zo{IcHy2f7cwRR-kQ=*w-I1!*u%8jm%nkKzC%AZ%y;O!EHGgre_yrPqD}L3MT-I%eEJ0<3|W3MVbx7O}0J4tPyAOa5Q1hvYN9 z_YsIdMM6pzkH~^``Z}kCnAh^>v>H2utfEyiF#o$J?*3l7kPFoHcvjab%_6<^N<6DB zwK4DoMU*{no)>$b-+Cbrv-3`T51$=yGoGq_B;8YwB@K8p{<2O zB;c%@$4vP_g|%f{H~UQF=bpH8!Bp1rdeyk|iD(~HWr9VpljtXcf!i-~I9l39u@~xM z-|=wLY6S5FYxIf_w%Q`i*^33zW*vogW_D;uu8TX};Ril2O7jk;_0sktjm>w0J)MVY zMSjes&m6`O9=uk;z{oDC8DV?+840$K$`=|FjnIlFaE~SMTth_^FBUOxTt8YZi8?t6 zy_}t+>p%V4>k=gm5;FFJ#`l_gdIazR!@Mq5Z+PB0M@v49UuuE$%DD#JN1T`Qc}}K@ z<3=YV@@C%Az7i1(C_(tXJqTewWyw`cQ^c;U9lNwm=51674QzvN9f$-K{FSebGJL2J z(R?A#bQ`@$T_$l2xhlJaHW@oU%(G>wVTtg+u>&}3O+ zrA0)7(`aL9bFy50r%g#FmYuR$n;bDy1;Y*m9uEg>;b=JIMy%J;-6J- z50WOZg4P3F48M93P6pm!evk93EECQmAz9zMtFP#x3vQ{jgP zm@CTmF{$4{muM8t&#{WS_U4IQm8cpKzM+Yd($>-Y`lx`mpHujSyeK^}V8~VWwV<|3 z;$#y%==Avfjs~baN9Y+4Do`C@gY~d7nfIcfc}~BKgW&jLg9b26%f7y+(ab|MaBp1) zH>6=^DP_r>r7~OD-rQFbjYEy zet{8N-go&fJ|sjuMK-gthU=Hm>Q04{UOb*ejKZQ;d0O`7N+7N*Us7Sj_lvX=P@ovi zRo&c+Va3sy_yynetsT6e=Os1SnK?=t^ITe6$bK}F_8 z9*gB9A_h*s09^?5;~M?Q22}=6#mkgB-mnAdQ`MM&KHA`S#hUfXzIEmuh0|Y zQZjysG+#D7xKKmIcXj*LbiyUO6`yaw>VF??wMB1f%pv06m-`@ntJteg$jeXT@q!UQ ztO^gY_iakbn0H*R3slKKjE1TX&#H6}NB-eK(BHwYHZ8HEd*(-wq_3%!gpmPh>q>KI zh6k_piJDz$>eMipyN6Y%JVqmRQ8|iJ6uG=426i{1$oKKDsDlFO- ziD-_@YP`8}Fq5k|>L#ggw0EQX7BDxI=E2L$`vb44p^e-B+8;@5tOz${&A^lFF+oY6 zJbAKiTtC4oN>E3TN5F{!ws&aM*fPh{+`=+ucWV$89%KuaI7nNd)@#WeXu!-4k-IJ$ zk!fr9$2+LF=oI1;iF;e5?3q3!o4s`&dBc`3LJRH7t$kA;L z9Epx7YFe|e)EMcao6}kawa6PW^>8wGL$4q2ZGX;>C5wf)cP_w=I{BEHi4Jx1w2!-U5 z%>?E|Crh!PF`0`5LIHA}YW$Lo6za{BWIm~^)WPr%w($Zintuh|h_2u4rd)tbZ+fqxc zB>fLfqofSQ+-WMt+o^V1_CT}4A;i|VQF-QO;l%y~R=hbVa=5DFG|l2!;Hx+ePCSz; z*(MTGqxBS(f;N{_TDJ%Td_Z6#dL`C%Z?xEo!~#*WY(z3G_gOOC`WvXJaz5&D?buM2 z-`55BZ<+*-o!Sz;_0!i1r)gS0hE-W&&&2N3O>+gEof+N^m4zOq!%P{BftU8KE$YUI zQTS)NqTd!y1iX{^chn1y<87;Csr=bEWa;8m%@R92biiJsHvfz}U%F`eV$IUyLA=v7SdD3`l2coUjBOm(@t3Ko zNt^JOliK4GBM=#FKSenpBS)96hdCPM zU}wC4JNW+XX&M{$i5fCffo)=6%o|1&Tb|Y(&e{-m6YF}9C0|3~C~%$BZl`|Dy7RZm zHQ4$!!nl-Xn6BF-fBb_0qEDpxakRd6n_7=t3dd3Y=Y3km+B%p%>fY&oAeo&D(1S$8 zvWl3UNTW8p{(&*IRDA>gu*Kgt2AM}|JZ+4oTC-G=nZW9hA`fRciC(M8h^_h(1{26; z67VrN%8Yn9@T2pg?{zHzCds{&0+L(v*@W;a0x zc?%|Ep(VLvJr&jU%_NDQ9TQdYL#tSumEuR{68q}fc0*}%+z(aavA!J06sA5Np_WOr zM~a`;>5nF{G=;5J1IEaqsI#r66mW~0M z$_{tcqOgH&rRMrzCtS_gYW?u8buR2*WmwrzRW%GSU3MYIb@exE(}xT@jdh>gkV5!x zMrK`@JI`DowCC8V@YL?@yTnc~+eH*KaP#5r5o+{&Z128!M@<_x+<4>ZJ>OjFu)cK@ zgY|_z@8K&8K)|@WaT0Nj;cM|lXUoo@r_nr8fJtGhpTtym?d_DD*Paz1NI1)K1||Pm z&++W>Oc%hOb$ERk)KqD-x>WQ8$l8xu>*fzQ5CRY|x{JoQHCv;CA1u_RF@ceYpo;IuHv~iVg>0!2ODC1#a0 z#Anu1yXyhPQPby{6Y4`W6-LqBTI0_pRKt+T06r8WGfXBw$Q7wsN}cm<2Bda-<+vvL%6*3TuMg`j&_I>~19shp4qo z4S!CZ2Q~;fIR~@TWmHFn_ql0O&st90frWcptYNy*K@gzPbr<{?Fn*I#F@99^=vUV5 zESZx{3PY4XetQDl^K~(V8rp_juSAXUfezQ20Z!@NTC?Z2LIB_P!STa~trLnfPX!FI z#~+W@qQuTy!JZ2_hK&;}M$R>@=|=uXeXm?x-jDiqtV8eJo^L1i_d!n-fNm`ccI5d{ z{Ko^(8LQKCWYGPj!dSBpcjZp`N%!&%!?524_0ikmJMa%WO9bC8;Skdc_xjzO4fly~ z_j@zs8i_U>eeHU^h>AmddB9u|M_Phi47-r*0{w#QEk~sY;f`VW=DWez@p*d8lowTM z)FEUc=`zZ~0-!)g9dP%Y)rnP0|EIwu1`XMqFJfvFVONN1sx$?fNKh;{!T~O-lR}Jb zdJ)Iz8~h?VY6C?@rNiG?ll#aP_^6x{ek4u9IEJCV3PdnG^grke0}neiIF0`SB_99+ z!O8Hbj|OB3|3hG`-YX{>=!&mIMqj3!)(<@vOoX5Zh(sd_J}Db5gW|eM*+Lv z`$45fQiYWSO+|K#H}=0jq|brX*hMqTDM=?u5SCVaw+I*qXBpN=XB30L3JN&~)-d6Q zEzTs&aGBK!*RPz164?OA4D)^N81&*C(|(y0rfXj@f`S(ijNH%8_BP~*jQ#hvV3*Y) zEwVEH9K%0C#K{FWLq_h_8@--lRDb)0tJ?}~->z`1&c*K$XL6b;WL)vC3hbUY<}JRV zEe=q8Q0}VhoxJ9+evz$oczky0-V(FYIvNv0jcYfu{O<}yo|a4T2IGrk;jw1fSZvS(B58AsPRbBO z5}~y%8@n(pYZtMhYMb z=j&n%6T&F6?n>S>5JEpI+r*$#gY<^U**b#nLcuJ_ul>hR6o=2qgw_+}MOv--v9YzF^0kOgZael;-=tv7kdyr+vevjbp8nAo&JWsr3HBaA% zO}>7FBP?9tSa2g>h@)1P!QNrRl!9o^cXm5Z;N1d;rJ8~=Xn%iEVUZrschMxsDtx2= zy&G6I!Rm4R#+x}vX94O z_licEDORyP&F5nb7WFHeW0i_m^60ts9UbF`l*7?lE1RpPTxrg=ejh71-dQPrC*W;T zXm;ALZgQT|QA^K@5Yl5-C_u%aI*CM}M&Yh`Y=2W@|n)l@{VfKfD zZW7aIbnjd5I8874mM&oL;mf@mWpvcn;TdE-3xW6l(Ep|)B!sLC-!c6MQYK!}(P-<4=}Od2i{gtHSB3z>M z53FS=F^Bu&CNkLOEMn$Yl33`vF67MyiVHwhTP4C_e*)3KHzfLkxA%&|)^?0ji$L+) zUX|bSqS;ORgWzqu!Z=-R!E1&J4}U#_<&7*+NLr$aXlGlm?pzNnvSaOBu|Q?M3XH)k z^t^P^=`BH|-zSF5``Jzs;rW-%kEUL$=vuK())muSB`c^q)w?{rE)t!39Az7IA23g2 z&kDg!D&@sSYZBGgvwXVY9zPT|3V4d%`tdGSPC`XWxk@>ugBI|MqR`ktkhOG1t zUN4m)9`sYV?H^{XnD=yEf9)*!M1#HGCYm#)viveZ31iJWG{#PEqLG?ZAzfZoePzgv z=`k->i+&`|k03?vXZy?8FW6eNcLr!B2sg2+ma89P8N6+gQ{-?$2NI%0Aa58YdE{i2 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 diff --git a/docs/obs/umn/en-us_image_0198863546.png b/docs/obs/umn/en-us_image_0198863546.png index 88c1c20e28694b935b52b4cf0ac8e64bfb4b120c..9dd5ab91efb1881266a676490b4ccc38549aafeb 100644 GIT binary patch literal 34254 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ΞaSw14=~wD_a0;bMc{s4rezPEM}Ww4}7O z`glwume-jnJv}`wGxKoPdA=IeKLD4)XniQ15F2f1XlSC=nK|Gg*-LJ2A|Ekw*UxKf zCW}i;uB)-eF>mzlDl02n%r|ItEgkj?B9a5h7tayD#G(up6cj#6N-pjFX+e>=$jPCL zz8DpZii_(Oqws76`_z58+t?q(-0)Fdo#+tJPeVtCr5@D>{fPOo&|gF{LKkx zN@}X>UK9Eq3@oh01n0RI)YSf-mnXEP4HRBydg=81badZ=%PN%5{y8Ot(>c3d%0a%n`XN1c3)^M*5J1YnHccnH@LmIPJ^^fhNk7| zlK7m39Ij3ZvXaOx*es~k4COX<_68r5c%Cu7IjtaPLO z@bHB|C`x`IL^w4(a(+5h(YN~>v4-)p;jfu@r@%D8X7NSDqOUn5#%7JkIXJxS=Q|9Z zUN`RjDGL4w<2%4Wp^=GS0DH6Xy#~{F;5stS@SE8-X?~eq4!rLRghYkcVXsaaMCH!O z?nh%{qG}X)ocCQ>CR9aloh))^X`9kj3AXR0oec2K@So1K08eY1wr-rYa4u+U6r}LJ zDwZTDv0sG8ut50~a5JCM$dsAdIyzGitR1_7wI<}YGYEo8CY)?fi$Ng7I$r1L8ta7| ztKEehxnvtmmA_rY7d%~=6+$G0J-o2$m0_cgm3ElR?UH)FNjo{@yXI0(?YmN92oun8 zc1Mm(o)t91ac<14h>~99h5gjst?-_5gipWI$*(znPxk!xI9u`Ia#w`w*`EN{wd4So z_4MdST}EEsxXO92xUDSu0HciAoryiQk9dSaqX#%7gU`?%09nMP4ONuIl=LzZysYAHBS_F%J0Zu*3U zDPhQtXr%uEY^3^L9TnzFzBjQQw6wH=$sz#wVtF?A5d}nhRcC1*@@QEO@CN zbpAn9bbmebm)*SQ>He68HEqW)uZwkR4e`Rp8#i*`kyZ`oM!yHsZ@@uO>UrtJ%F0@E zZ6&;7M3gGpu3K#1&@Q8$p8)tE0%<1$&D!Jm`QHZbqV9C<7hI2 zI8ynuN%c4n_I^BRU};3nkOL7nscI&a8$NJSq9TzGAB=n9E0vsSf5at8%2X+@qS|pS zKZku}dwZX`t7L|@FhW%ktBbyHGdKlhEme8{YNpBI{k$OvQ0M38y=Zcilap)57Z10Y z3Uu1@)Jwm9`({@5+ug~DLtb8<>DVb#2E-{4Fr)4He^lg78obVqpv@|`O`Czon(?+# z^U`(g8>fU*)={q6S7UxiO&JWxRQ9jw7Wvxi6wAXqVW=KUMzXez!3w=MioLJ=Gz}Jc z^*L80R((~rgK0lEc}@y@V}#7Ewm$#9kwCrfx}#9KqLdH8m-0~NWZwae2?N4x#bO6F zinmq`C%oGU_6};lWN?_u%>uhaq{s=LJsZ*gKKA2NR4MO_`Uh|yZm3Y4GOL z>S!Lve92m}lV9wtZ>zi!cvG183~IlFiP$0o--?TitBOWD7_&_p^eIhGXdA4gHGPAG z@5xJ|nkgThMpgCc^qM66ykkiyGW3iY^QEUU!0a)oBa;RXRVTRgifoJfWCFWn@|BIO zvtblDTQdTkLGnE8cj~Lp#j5C5Mkd@Gb&=_b6-g9qD{|o=d~%K|C~JJ|xThc}DJhAA zQFLVb+0QLfCi|Wvj_D>zs>fT5EIqQljyKvfgafv@1TMK$UQf2#WPR&9vy1Jknptw| z7Qz#TczAbLMp#%ngEU0Su#c4kan1ka$U|s;ZlNY~=32FcuOvLtyl~6qvABXt3LhoL zF*0eAfjYvZT~m*^A09IdDrM+G5vYM?LP#-D9l=J*_!DAhwzc)TiX20(E^}BkH|i4H42VA9ZVa2Qu+xAT z{D6Q-^O!LNY&&!yNocm_fxxiI(zU%2d}GTcn^M@5(h6h1W)p>-$2qe~OU2UB!Wdo7 z+@67d=+w?HGi-_lvs3Fw1DzMycJG`5eKr+7c&f;_?L0wMG0Uo+*5}N1ZNYZQaZkOI zfdnHLSfRMDc#ES2KO|HloTn~m#wZ%|c$_tjL~2!BM#kuLXV&9Bn&Haz&8w(p2Qe-OgS}} zb?Dwaw+?(Q$bPR*8MRyw|E#x3TXQpWHR6gVl*DpktLVkJRKB#4owsz{U6sF7Qvpx@ zFPnosuXv`M6-`qz{J0stdEaeT>;cmlPc5I03h!q%mAi0D50{3A5z-$Ro633E10O?# zXXEn}p|Gxc14OMI{du_)u>DUEvCTBd{XqdbO3ZI&hFeatR}kKL)u{nfO0$5Z2Ux#rMl7o&oxBnUXKRje)kK=RUIYJ;$#&I!$sNV%&MT@D^x8~X)t_qhlV>k zd5a|B|Q4Nk0#S^lC(2XiSqi2WvQx=ipj3KG z*44=Q$WW~zQdf;xJ_TcMi->JKNZSvuVxvw{yw@EZjBV8W^9!Z;KgfH}6TUQP~{`1&}FMv0_PEalV zMCGGGWg8;XYne<;PV%Rv=M(X_O@o^Rt&SUo-092Ue$3%Fo=Ird<*)j;Me!fPG-ex| zgdVv)Z2bNP6eq>U3Z$h48g5rsBDJh~hrWmb1;qEhyu^V|K)taD%C%ZrIAI&%t~sTJ zxJh9Fwcqx_d+EU&JHM@6;I)w`?LyRk2Igozc7+pqQz-JJJ(m$)5o;QLK)Pgfqc zK9xnLeJ4A!-JL&PaeJJ-0iSmgkB*C*UW-xuKeC9LaE%EjJR@EwT?0XOU{|)8O+)$t z))EYL-hEP^3xDc}xwG*q`R!mi4GiW`W_&SGiP|(Rw>HdNl%i3i?;R6ceLHB`X&RHX4r%RSxs%vEAPo>iPa?m@B-%d6 z8&gwKgw>a?B!&eKd)OG%ihdhLowwi$_8>FTl$4YhK3CS_;^Nkhj>F{$*(cAQwff-- zd<3a*M;L{5ai8<7BY~{IIb{TmY(q*uiSyQkkcvuFNwlky(lhU~7K*d+#+%XAx`NM> z4~bwZp(=nWZobG;dow{o!Fds}&FZ0HW~kT@Tcyh!_1=}ODB(f&y|p@0DD9HSTMtEx zmF|~p_?*$|2?PZzZr<#yHeGawjhbwDM#Wn}18fQNjrEf%Kcyv&MX1yu5XJlpI5dMWNkZ}-%W&CFaKbQDl#1Ouw^vTJswviF(u z72D?9%>lU=9Eua>no|JkX5!jhqFpVq4b|r0w=a>I1l7kLZ=DkeWYd0B+mcO3QB`T; zF4$dzUvya`Io<1V`nM$#YWH;b6~#8X=(3kQva@HOS{o28rd+bf74FMzPZ_oN;{Y-s z0AvG|MvAo&4cX~IM{f1qyFx-jA)(SSZ<0q3ybmINmHo`1`j@x80jd6q8Zc9Jb@grd zxE5IZxjt6Ca*?lL-)hl8DQ#(Peqd07B#t@eT)fD?)uzADkH`Hx8qpaL6c(xUGTwuD z2bxk=xfgM+7(K0y-dY}?I!_ts;TNg#D!(VRSC&9eplF;&Y0&dI*NIPEjEL2g8q`RE zY{sFQ(^xS)Q2h+LrwTMX5J9p9j5h-A76M3;8Wh8^h7~8v4A8vpHSayZM8u7TJwD9s z82BQ3_d6&z1AP*b1%`LJ+&aFbmN74pf#?XfGr7b7A;rCg0S#|G1iTGd;R7|5V$B?C zPDdJ0D_Ek?Y&t@W+pgs|7J=Fp5&5sR&RaiDuEZ;AqsA*1K&JzVT>I@#p!vRbWIP{y zf7u%;r`x&c*EW;*HUXXnNSGdjdQRia5x;sZ$A0fd2cgULd!X1`|50;+g8?0~)}ee$ z{SasqXuUOCKXIzqb&$lt%(>&j^E87Fy-piBGDZ=v-e&Bx@1^3~fjA@hKDWhnZ$HrX)QILfMKjKCAyTRJ zG@oBznof=Snnvp>sZm(f7946YHnGg@?|R?zf@+of1D|U$P~UYxaep<_jLQ}|M+@l+O|XY$2nJJsEH1qGtP;Wt|@v+jwKUgNG0yj z8vwhOJ=h4$X3ZN$%qdsDnD486g82Fws`QoXe!}q$2TPKU)m)o&zlt6S*L$@h|>U z2Wm&0gAyCkY(Px&IQk^zawa=MM4#Qsy%N3ylyCIwVEN*Bpy{kVe}Gm=%5_7Ts><$E zvMr_+y~=dGbglU%W=J3uXzh@z2=pqyL6rt9Es%jJCc?nB@$CL8O#~IdcEKuNpiV-8 zmrJQ#qOMfaT2M>4JzyC^=+8FvG`lNKv zmX))>esj*LjLEzj^(*$tYG@1!M+Qt$Yy1RPLEZoBJI26bA(I-DZ`&XdJ>M$rkKuQB z3P{_fL-R|X>^O4c2Obzq%6;&yW^{V#T`a6l(n;yb=M#Ar_SWmM4dx(*37=LBM%6cU zC66yxE-U-$8)kZxM#XTCx(EQ4J@ zY9~Qy(9Ua@AXr>;Xv>ooKmNZGG@M058~@^~35tIQP59xl3ix5SfA#|Wc*0}FO0?V9 z2R5gRw~EBm#USYP571G55j)Xi;0j=}Fo`hznfuE=Mg*w%W~)62`o<#y>IINMwMvb;p``jeRe;lF%Dw;qz7i}lyZ?{rDG+Ohv3bjh0 zIeJU~>1Cf%`MIW`HJ-f{Mr)(>xR$?t@DhljwDj~#E73Yukr_A3;3+(wT}~vU=>tr8HEpmx+l*wqW|Ea2V>T8@vcQ%|X|Aey z8TCI10|Lj&q2}R8AWEeK;z=O*On<`<>-TmixJJW~ueksz2*gc* zPn?3hEhH$~oli%04ZoHc7w4opy-qLd56cOU3W z8Yk13aM2n9-y}6NyxaU;oDFvL|3tU8;!CNxlmNSZZf~Vs!fGntJp4Jm+w}cc3pmYa z*FR7*q;MU64JaI9E2uuy22vvtfR@)<$h7Kv2Tz8f3|yHG2p;eF(_YsdAkIX_RaT=q zRyKZ6wnvH)7mlCC_1*%v4feLVFGAhxu+D0g>mL!xBkaBjiAj_I;?@iXZ&7Z+H)cwy z4vboo=KTSgCf5#x2c>`I*XpxE(UqFMsqXs{S+znYb-GP=0n_jfusO(5id~N>aDvFF zD7x96owVpUHPo`~?N_t>Dmsd;==bmM13r%Zr*4_czJ9dF=C~`kHlE)-s-%P!8_loV z6%ZBV*5zegdzRTau;q!J{fbXJ&H);RompjoFPJrWG@%fSFyB&A+nO*GGdJ+I4ot=4 z2tVv;MRT*=ePmf`uJ4wun>QB(D3fRlR?k@rqk8U%pu!+Vz{7!)O*50l+vRq+F1 zUM?DAu8xZP4@pAwW{Cm%h`WCG7JvDBxw(C+Pe}t%FTQoH^V$qA#ml`Z&hYi$dAXR8 z?Xr1=EH4u|&+kH{+o-+(1r{%FL{6z|h&GshE%Y7Ab;!ZHfn^ob;#98Jw`z zH_4WcAz0c8P~rd}_V1FDX-Bs%TZbSeBxC3H%d?FvhUfGs@iRj%)l{-3)>;YqL3rGm zk(m4e<2MrnLnGyH8Cnt$skBsrY4<`4ES({)udIH;KY8KcC5k#BlQPAFzFo8IIy~Rm*32Y8sU=nY4`cc+9nR*24WFT+qt(U~kFZdF zLJ)PwA>VJYHg=v<4Ms_6CqQGhmnWwW8$_SyOf+92HeELJ0y+C*)S|UIXwHo)p2fsI z8nM$|fA%zKb!g@Jpw{)S_)KY>W`8VpHUxn8g%ReXlxKam1!JcL(# z>yz_gUY2FVBk%(TMQT8RD0s05)d#3lB{nwc$s{j(>O+6)rIHD0I%Q0cvmt)z$c4Lp zb{s}41=8D|(GNiGfjBweF|*e46AK3J_XLRAgaGc>@IL(OOA8%iaR2ck8_hJ{eld~% z^t=-Fv&j#F3{JW!B0%)o%)p@r9TH&7h)c_F8VKjN;#N7dxqeFHlUW>-Z$_rFSSMez zKwfh|UT3{kRGB@&m18b{e}qDTwqA~XG@i7(^raw-7+KjR9vm8;oiu#SI!QE=d5kav z=}rOxW9RSqH;io419q|6dQ0<@)QQBC9ozW7!8;z28Uc{-NZSOb$w90sF&uBAVFGW< zO~xPP9A{c?IEO9lQV(ps{oR~G5*n}Nf=~e~eKx!%ps&#>qhJ(uK3pt$WtPSH)UQSq zArk=ZI{o(M43N6=PG2?)tu&&1z=@l>jn$t>(D1Q1xb{&mb{-$P)jTtNK> zV7wjCQ&%94dFF8%Qo_&!g7)W-#x}!sJj4()5PD5}1n^Of3u$x>vMgvg&SG4HW_ust{}EjZIqXxwTD|nuqR)vI&FW zXunRnh!D7>%C``Fi5!M!Dv;L&B}w7$sKm3BH3uQl_;Ee^SCR(HW4h5VlnV8d8l&Xu z!55mR4ttG&HtNx_@aC%aurQ+d9xoGwa3_-*E<3u2uH}}Vy3(&f^?2GJ|DzAQn{oQn z+>YmW$o8IS@_kFcMsXM_q-#)1Thq8hXWEVbBCAP^QGT+${rt5K-o48#AX{qV*bNU! zZqU~cTi~95rtx)c`og@hKK`jI5W}SoLi=`f5L2EgtHd3xLWmevV@^H5?to?+t--wM zxs+Fa4`fllB(SqJ)~|3yvzj5b*+An+YseKnjz#1NO)azZ6euX0V;rr_b>XXGC@i*1 z9+L8^j(zDD8%`&-X&{|I2HWV+Eh$8=@Qy?Yfha`1perm^fLJ=>a2!LL@0Meam|_fa z-!M1#>@-Q*UDY`kgcbur<8Iy8Bjv|a?YoA`|e74|trQPBI*oeWj)VO{@t-Clv`hAzyT)|fWwzJxt%Llv{KzIpr&VU_H8j^q zfndw9x7(-Fyrym5$asCkYX7C*7od``U9i9_$LG~H%ho`(GJ}04j*RLBKr|D}JP_l+ z=qO1*lj2YJ_XUc|30_rbW<|ufC-==L0`>EUM^2U<&IDQPW(GtJvgeUs2U*rcntAGa z#v;ci$ruOd#0H%5hT3iYLRj27d=~+oEbOTSXnSrgL#oCx8I|%7^Qoef)ZLYjBPKsE z53Km`8Wx9xcJl{EjyevfVqNK5^!HJfjt!!%(78SnsscH*JJdizXWMeP9-(U2XG*^iyP- z_(TjA+>pNFE8;RUtS)&Q zob~Rv-kzL4WZncSRk)0Ie&DLFPQL0oSWUNr0%RTyR_!^G+lN0UXVLDGx`O=s=#AtmOjzbTTDT`>~Nt^EAz`=N@6W>Ncgpb!k7 zmxHL1`gSB*+cb4-^=vQfNcrhN&zo=viHFTxaMMftmZN92*q{KlqyOMi!rkhD@?jxA zi5R_w6owKTjnwoDtrgH~V6lzG6oie>LBU8V9^;6lNf^wuQ-D_^2nKf3GfR8}!uBFMnJ`I4uPU)c~^6(_W==FKix zYIa^Q^9}Tp!kYTKi$#}$IV`wc;U=ngTPw~gdU8<9ia+)Kq8DdPb=Z)xw%uK?Q`S~9 z=qUP`2&b!MvZvDV+CFz}lGDM{^HkQqb4#8A6v$>0Oi9P1jzR2?;-G*@T%1|QAD^`V zprx;EX@@yQzkzt&QuTuHNAfR#xT_r^$x7?UnTKDwCq`9#z5Ts4O&j zvIy11N=e?ryi0Ex(dM^z?d&1u| zstn_znwXb+l!NkjhopXF!@2!s7S)qiQyfu>CR*vD?ekAb2ArYnDzRmDxlfc%j(yEN zMm2L4*_hr*-*U*rKds3G>Ud=QA|mA^v&qY@0z!Gv9vEarPzRV9DF7{|%lMQ$0VX>G zor0rEB@;6XB^k>aM4$h)1fZpDo)E;hyQ3?-5O2q9FCb^6$O1tS?xveB`gv}k;HZysY_V=JRXieD6ZMIk?d80m?aJ99Arq1> zo&WW^Uiql8nXqn#!M+0i!GmOM89-yxPehm1H2opz=c@zfC8J7znCX@BNk%+0XA8#d6zv`J|E`S^OI^If|7 zYWK_1X~U4QY$6b9jR_bW#wzaUJo~wS9RAg^C3qlpCT_XmOTd>pMQ1;w zn_5<2+(<-P%jatBloh3eJ@`aWZg~5iBp^@04uH1b0=iYYd)I{_@?I2x0&=b^R+swt zm`5pYUK}hEm({yjJo5*R&&wqiU7D!+H1oDMa*l{u-za3RM(3l#j%PXK>|OUg&niaX z)x@XNy2ryGX9PaBoTAaslkj+rib5=xIKoi3#T@ES=2mniEVG}D4cSd@;5TFdSyksbdUUaReP zkc^7B_$p|P0t9e85aEKR0J$Nc3jPWNz@S?y6kLwvnwQn*0jGTaTrUrL+4Q*>c>y4e zH8&PW(btr2CqTBA&V=Nk&pGoN*<>?;NI0B8MxMNXrm8RBeWh*;^xJaR+`ydD=Rt!N zcsD%}G%&-DLE8x3X`8DKz;2v8W26Xv?wGP~;3+~uKQNNI-tkuK7jM~|0G$kQ&m0{q zNpC@|?B3ni#!O>&6%!+m9oOy5#1}UyfZ8t#56aHxnk?NmZ`>P(Uc48+jxmOo(=cH1Ei z5+1L0^zmQFrOevu0!#86NQ;5`-}bgZv!L-*zRb%F$#J@_alEvykGOPRIXJ{s1nokL zPd+2*SU_2IXj(28+-@0yE|e327{SK`e?w8LF!ZiJbvlzM&o>K zjD)_ipoI@vxYBdmz{~8Hp6$Acj(!SSK9L;~02E{~!IxYP8oBFEM2#AbUYuHS`@dig z0%p;9?ndw2aGq^f$R^;DI(ZQl&nE%;xHoh2CLtrHD2fB=t5! zV=2hb`>UG5CqiQ`b@>1aZchXneapNq@OPocCWpM;4a4o^*C7J66QBPm^lN#g(VVHr z;LolUM+quTo}~;dj@h7s`&xW;6wCQ{ z14%nBh4s!viWDr`1rD*WiIir9)}PCoM z+A=^-AfPx{K>7zbEGocPfc{{(*8!kw_3;5JmdUt9uzNV%L9)Jvm(5;&{$-FpP&-)R z0sR|2psMrw;^tlLkeKYRZovG??GX5Y{$1X=2`TVs0HF{$o!_(;ddXIggAAQk$i*Ho zz2NV{$;)|Skf?yJ4Lv~UEA0$}_H0=|j{)P1$<-oh1+?`fBfg`x;_z37mg=FJ&>YE1 z-QuozMh@F0IhKj)TH>`-eWxt{Wj;2J$-zZ}wfsdDPNyPdV4U?UM*{FLyWSqcEYsni zv5efRP-Exf*ex^O!kk?PY~#$gjEsAHFEwVMTWUDwCV=#)XQ_*Fq-Kng0p$gZ~& zn!oH1s0jckTKLJkt9+Nt#(@#-A<4E~UIVhT3n|rKMl9qX8iSq_I#Un`>|dM04ko}% zI>1t_MVdQ^{nzHfO85pp{*~K>W;C>KvIR5&%SAmKx>%o5Mi=pV7-8LzujPvJIXKj@ zIuvw+)H&WTG3J9>iob_gbbj$d{F9<`QIOC4*LgkV<+c%ww=E;MR}&Z#%I+ak=2i2d z<3fi-q{(@{OwDWJOatOk$KIFV^RUpfxT^!?2FR}QF=>*Xm{zLRtBqnSmc$C_U%Jsf z966iByO5!Xk53F>BY_Jgakc4<{^2~a38MH);ZXl_?R!giA-56agR;G|kLNtJO;-I5 z9eaqg49m1bZm^;gs|{f1$?!gcFGdVbv4A3{Mg`aw-nhIb%n30t&~*{S!_gIWNx zYqFB>niv?n(_~2@@A|`hDaicE{jA=>05RmhA?S^sZvTA-n!dI)t78Bo0S6uF_lj;; zRu8SsFLv_&c-GnO+Zk?l=~xN0gFugL^FBocBSTw_2mdg~{b(xXF>*3B9+-;b_2Q!N zrWeOYk>W0y59v4&y@O;pPr&r81MB*9q?5+tn7{RSKy+6>%eS4q!vUJJ8SS}F-5*_z z1_+xkFhyl2G&ji}tkIf!Id?!LGoCv>8<~>7b6rmbQk&TfmMmWz_FCKh11C=mqyMTj zl7_%H0bymo+8u`RwXU7Y(s{O|u)5d@>@YIxH#K#XSp@$KVP%j9be&eLyPB9j35pn# z4R|3~+g4vG>GjdMR>}u-fawEHlPQ0K@jk**dS1DQy|@2(;OM$IIX4|);^OfV^uL1Q zXIr{qZEl%q&x)wXE=CQL<8L*-ro%G2!1F&4{|g?cCqR36&Q%y{-JMr;i0yx>Y}>DE zZS=(~yQK5h+ufO*T-j03>&la+i}GFPyJoZI@XzTM-#%eHZiNFrN5djJ{r5dJDn=|7 zQK4Lqat!@ZGm_T3xC%!B>@P>|V@lEo-N7Nmmb@SS4j=RT7oza*Qmppg-q@!C4BD1pl)5PQHght!8JI;h0!gCD5XzDA{1Q20dk z9A3PCu#JFcL)BROm!JnUi^b7rW-Ci|f{u@jm-J_q%uX@MmeyFAcpqqz$a1emhuNKv zu*g_Vqj24=u^zjjNVo{7c0~WF{e$h}%vFX!%h_@TjwVlR62*9;{M5Lu4-{KhnJtce z);|PoA+G!u@wQaGwsGN-d_i-j<6@WK>5}-|;r}%D)?rn(-Mc7)fP#ujmxzc+hln(a z0s;a`DlIA9Al)J@l9I2|3+e8V?p`!XH%K>U%=i0#d++nd39pOG#bU-YpBUpF_qfM1 zB_oX}#$)4~d8gEsgQJqN7SRmZ_?l|+t2#P@&WTA{8-ivm`hLRROM@ao&vV)BVzF~H zEZSb#p{8}D6Q}M~xev`qF$fG5QxvPm=9UKevx(8)R_7s3aJ?o-rZ=|}NFUEJ-dc!q zi8oLEM{#~CL{qVVzBDH|y`e|Ikt-v?(?^}s$T!3_(hL<`qWRhsOG^%$ps7!OS>NNf zK*Wer#UU9P$?vv=b)h9yZ+h>Lh0((`31$%z{!cNsRedw$n%;XHzBg}7ehU45;G@M? zomRX*!RLJSyKdUo!=Bm#_aPm(LtFfV+UjcBfOoXDb=nUu_H=LLIDRF}U%kYEjlEMh zeIbLczZIlb?thj=vNP1)a%t%fXH=`ol#L0wIIF9-P*0a`2T{w%Zs=wXY+v4lN9OYn z?AhZw`hrd10*{WH9FAuEakHvRC3D>yYe?PGrzz{cILh_eSzg9U>tPUK_Ld_F!lF8u zbUzkkOX62HihXaBq}P&6=uf_ql|E#4NLGzq}Hm#I?NoWnlsZ*iOlJ>v*)Fygh%bpYg)xG+{Hc4>1TICx~L}0#NDe^ z=B|mhy!!R^Tf6_r-sN5L!MoWp0jP?al-(Rc6@LM%Vz!Qfhlizq^^UNfUDvqw2J4+z zNPeKC0VPgd$L}i?e#g%J)i`SGQK&EPJ}_kW$|eqV+fnk0Klk$T>cgO}x_-G>xvZ-N zYm=fAyS*57Uz1heLHVkqa!bvSXZCeL%eZK1T`{q<)_l|{W9FCX{au5yKwU#MFA;j; zuex?U4clWQt#PHxf#fUFjk@f7cGxZ5cT#&6s*ftl^lkDqA5{`@7?0l_HZZA!a~IYg zQ~KFVO!w-vy=q!ALFrk`&9|)FyXYa2X=2Yy7apiw8SDL%d1TJ{@P&+RD4Fy^saBswI~C}MosI_ctqaqN3I5cC)6DF&7+PA7cGOFfoat}7d@Rh7HD+B# zv1Tm2G`Ra#ABF$JTzF~(Q#zw;qrFCX^il4bCdIgrlqF+qu&gl753edtM{?d+6)9QH z(;l5g(f6EfXhCv{-;&cMcLo=8QjM_fzjmg&Bq+4c-y_D}`s*Pu?rg2aAm=o!on%8B zTlptYQwOHyC~um;l-oMlxgYUvz-eaX)`EG@9lB1}9w9U8)`H;B?>weSc z*rq6{*USVs-vqDxecYQIjC;=3jhCBwFRuMaG;+=)_0+Pf*(mV3_YZ9a+Civ;t7UL- z*h;Z;6)$hl?`PG_Ukt}_v4vnFg*bu6u5r*SV{?+=NFSe_fqjiO-C2em8h$ zjGP#{B?9hDltA(DwqFhz1&=pp*phk{i(JI!SNx* z(&VuBYb~tvZC^2ND-AWinv|=ws%f&1mukLT68j;xweRulK}$?Wgo^~Tf%x|X=B5y_ z{#>H*a$}`(W4oX}TU)~&1rZPVg<{H<;z<-y-Smflyh}ZAOyMQC5_ye(++m6Q>KaKh7AXbt88L{gfpwpKIh^dr821mtf@09m#dpHoQQw9 zs#;n~S5OpziWpNmwQw=n;d&TTMPT$+;|n)o!|cLa$4M3boHq>+43^;9(PIUk+PdxFyJQzMoB8Y_h`dn_YOR)UXB)3{FT-a{Z9EBY~cYH?ssCm970TXT(YNK z_n0y|U@b;kF~BS&ion0#=L1C*5jFwVq2qbcm}I5uhBgB{-4O5l604fJe2xmtwax;m z)zq6$$gXp2i8JGR47t&jMJ&mGeo(*DJYwV^+aLa0{xj2u>?r+<1va7)J~+{@NE7c( zNFRncdE~>~x>T9;CWvcvCgj0HeAy}5&7=GKRoCq!(j~s+8NVL?Kc51p+5dLwjEpZ099bbPE z1GN1L?S#0OG%fP!56^9NynjEHhW(a@8{8Bv3x*LuJ~f!ZeEav4Ii2*atF%6rarfe+ z{P9q#XXT=wKP~EG&=6odu;m~bp!+^*W8{=i`5V=y1c5Bf6bCwzRld zzl9;^B1oi296@pZ?%(qo=*RpzM@@J_=Ax|kV}mBLlb`1?zV8LyLbga3U>OaC8FMa>y23#DGN=DmMSboHU{hX+Jd?z7_9cv4C= zZN*`#+6-tESALdCFy^aotZdK+^rU!eraeX0HN7Fx&+315S*6lHiVXDsyCGAAIcoUT zI8rWOqiO20U*xdL8BYrQ;VqW}Wd)f`;1phvZga({2PMZPX9_ov1y<#%z5IVGRmOA=j!#hOnxABCcJZJ>aL^3WW~_D2PZdo zM52)Mu$kwJ;D>b=IitJ|U7A_L?S)qPrr)?e0|2E1EQSK~C6 zyY4(qlJEofuLmv-`7*gmA5Q_6#*dZUq6rsqdsbgmoh_k3T->bA+5>$MKT%T8>PX>w zwlpHr$!hf2AOZJU(?~O^WlKL7rj}aqyA6q(eNxeU6=Zl&P>vw{ zsjxR2%x|$?E1|Lj-4qtL0PT|(?_PI#buQb|-PFYOu_W1!!+PG?PN`FE#@I0@{`^LA zZj#z|mCgR`(v*RiJu=QjfI_Ra(L@V2fbjSwE7?9i{1Rh0>p8A2prs0{U)Rko#N8uT zqcW{_eE4D%{ph;KTy+v}wcDRwwodZQ{2a;ImT8b5Y7H}R*wc~>*GN-2)36zgVJRMkFQ53Q5e>z+4NH!VkVKM{$B z@J)aky|P}}WwA8R9QVn-djCSzq?$+Yg)>ghg3WycY-rlvA5zsZ{muNf!m=YiH74;(9PC zAuD?WLn8Ff{HS4){$R!%JwwACC^asG`b(jY$Dk`iil;5A_efBv0{spWzcI>!7H*8_KOQK5mpRB0o?djLNHmi_-J+#}*ZF-@bjD*YY<~qa_?w4GsfuxM07L~FTy!@|9>bd;W&dMSkS=fR`{&7VJipy}c9@tuR2A?`2S&sMc| z1{LJKqnNH}ScYG&by zq(~K-@h)%8JSzmuDylis41~ND?;p=}COB6)gK8dtwYYq7dg;#T;-w#i+vE@?HP-IA1V3P$H%zs; zw@)K$r!6bDP$;G#dA6A@xOL$E2(F6E?!yxctdOUs5Mo`e*}Sx{E;AcV(+FmSGu>mO zeR*@F)|hkH1)t!2$0PC6{=BGjE+*OdVZQ}xR=WPnku*7%J7Y}(mPYsDVN@xHVG0La z722WA>-%Qhj-_BV!23=Gy^-s7iD3K5}H|1&NBj{b2>BLZOTp2l^8^sx)2 zlr>VIkALaXB@8I^`DB>rD86|QUD4~XIhCz-(fO!{!)DN@B?QtWz`- z16b6{zKC2L_4xSsa9Gd1{B(m_N>A^;oX8nB++J|Im9EHQIuQzcF+w~XPY?e(WzE33 zM?<-8O}I2Jb<_?M&w3Jtu3ov)yTi5$#VEQUzMa>^{kUF?zHwpS{aDu1+BDI|1!&q;VL_O`nUry0lp|@s{VFG$2?UNCUcHQm~#vwLN^lDlT zv(U!3)_H}NU5~uh_zvJpb`wrt`!1%_jQa7>MZW2&%8a(#T5AFi76x{Ib{!oe%@B$i zLXvY&`VMeTfBO9`c6Zs6_|tHmiD710UW|_~_Zr@G^Q`v?NoX!F3uP8W$68p`B;A_* z%Xu^aln^+_v8iG29B;a%-WE>smZ3#retQasZp|O*3d5siZ-F6dKC`euCn;^VK0K=e zj|EM|;?O>J;ol>mTRr&|IhD(7*Sjii;xyNOu!Vmu4Tz$O>om!@RsI*J%xVAJ#Ceqz z8rqh0!xiW6&f`%zRPmRWG@x~=saU4pc@6qGpJG*o9=If2(%8d%? zi;IW|qV5ENMQ*F*iExDiE8ht2YuR7iCaMEU8 z5r6*Ez^MCW>d9nxkJia+`{LsE_^|d?=LgE}I@C*?I)Z8cXv=PnbmlFQz7#1SPBSQ5GAk|Tm9Gd32nw3}?ia77H&$Y% zwrXo}!}u|>kU+9rwLfM8y5>UILZW&~Y*rT!Z(%Hyl;XaHF6F^1!E)lW^qyJptk(kF zJZIIW`qkQ);E?yNrvZjN2W5u$oD&_2>Jq2U@B9g6N#Cin1a31BQ1Re}o2uFI<3FTi zofahwRy=G`aI#KE#IsjwwQ2;`D^mKNVZ-afE8m{%-7U$?=I(tvXt!Ez8;JkLPe(`R zrL3%dtZ9FZt8=G8;gs0VGanyC;Txd3+6kf&(X4e_>`stvVFe*|Bu`FZO|c0&BqAch z`d}_(^zW0>ttjH#w?$vQx~5iQ`X0Pjakunf!ui0W)jfOH;Nh8_eG>_ww`FtR;Ztqy z?bo|9SEa4Z;mVk|XHrBAR)bM&f_c$qMp@>vLUxwcnX{{&oJ+G1L#a|3rqNNC z;YZC{qF)id8k?W(KPS{pSXgxM&Hcm0gJ^=+i{WE{u7BL{_3_z4Y@_Y6Jixaryv>ht zREwo9sHs5W*>Wqk%OG9X1f4Sv<`j!+mJ=Q=ODpN?SEw+ksso&WqLRq$Gw`1lG|%TT zfGu8fG%DYgnkSsAN=XF_1nt@^c87(BD=c%!2tk-m;B_t-wLizFDY{3=h*#V#) z!AR(WgX!oBVH21wHMJz;IS7saeC9WWZQk~3e%#L8ptUM}H{adkPA`Nu2^A5SoW#2C zTJ6Lgm$d-6-{VqKpCu)Gb?`Z#>UWsaSJ}MXjvhwKQ4gT^ShyCqyT&e(6)y5r(WU$PS*`JE=|>SjjlT_GRoSZ* zkTyV#KVkm@!9D+eD_!VTmeyH7xy>SMZ}W>#PO!eg+b1mZf3yI;_~0p=cjxUEx)Y>f zhZ?u8v0{@w-P*$@_P5ne#loJ8u>FI5g)l@ot*tK;KhF3wb#Q`nY7V98`Cae*hRAnh zWQ3_F*B|k7-2$6iP_?r%e}~`pVY*xr&RwSVJ|*<`=eYc~ORtx?UOtI~@&T|__EHB> zI5KP)W|Av(vQ}t1T7d0AAbj|AxZTtTEbGL@zP*!#cs}GKT(3sB3lY^r4*_~j?O6X+ z4zrZ=Id$N(X-HgPCEr;H$DaL6zS0rJ=)J__a?Rn?AS`jCEHaL_!s~`i$$S{$WS`)VLocY4H zF1zE-OCy`Ir3>FPP-B-JUK0N}KRf?$DZIjo^N1&Ty#MEi_j|Bw4g#eYdXnT|6NyNT zj?w}SXNbrjgtw(CcdNZoIxc?qvgU`0jkPsLT$j=f#*9p=toEd@ct>V(7N2li^K84| zm$v+h%~??s$*OYt+}8NO$J6Q?dk}dm$tvdSrSWS(kYZ=dTBw({(lI(XJR>aZ;+F3N zY(%ka7FXoZ^XD0;4Q2u5$sKDk{hpr{MU!C;G97apyAug=`b8BLF=Raq_|2Rq67rFo z<+TJxv+@<&?CCeJXP}-k-@W_K7{-<|=3@sOoyRh@Jh~jr6~mGIw}Tb*X|#bw#uIs+ zg->EGySczk@%)Q2;s3hZLdfr&0z+kuF+1Y7UMJHMk*O-^O%=2K8f6v3+S8i~uk*&Y zBmcwx{J@E6=%$i(fqEi9^dzq(hvbodSs z7ql<1j=T2n7xdg;7T7Lxc4P$K^g(YT-zD^Bq-1NM)x+^-;BlNv!uS$IixlnnT%ID_ z(}!mjA1Oaxh;lL>@rb$z-ESolElW5JyytV1cP0g-5_Vl#NvV?0bdF||iUIXk!dt$|~bEo!od6F4cP zD2rI^M6r`ENv&z)_T#NX!qvgJ?V7m`?DgEKD15vw6y&tf<)rniK$zO?#1Uh|-Psu{ zI;9GUM~-G6L2{2I!;xI%9Y=`KssnnNWw~mQW`&+c1z}Ul%ig*bPVP}>#omU;zWL*t z1r|{R%EhkS=hwz~W5%2O?-)#YzcWvX^fVt9*(}5clRp#3iH#jjNdj1c82Lqsc)kByrV~|1@MICc7f(2LNYgt z>bW5*$ahLUC;cufiBNI+WJIy*SsF4KOe0E*|5#_#;{L)EylSj}w{G0ka~|*|*lkZf zI%11jd!MeeEPP1qRmpez*>>%@X z`$=sk`WCP1hsUaD6yGn-PnOz)m>a5x3}74Mg9GOQp1|DPJsaM1cNT#8z#GZ**0{~G_%0!>R+tTA0GjLy9F6kfY&N-6Z6?E z21zR}kVos(YVW(AB^fyV97YafUe#JejXM&0L5H<$K~Z@IT)V`>x^8KII&r=^*%3!R88p$?J&^55U$>!e^M6Fbw&kw8zptDM zySv~xh}Ax|6%`KGy!edd&Iq3YVC5qvMU46THEGJjBOCXYk>N&|NWUY_|FT-V$Fp9$ z5=l}kp;g!etYU}+Lw}|_+0K3%SedUiqzB+%kuiAXXvhFz_imDKD0Qf8N^AV;uybzq ze`E556}d_knP`DekIsh(KFhWmjvY@Tqp*8Jf@7e@Pz%BdZ^nl{v^&vUdgt;OL1r%G z+%~kxJuECJAnbYHv$K;`bpgE3%c-5K3R9zP5FKAjtd8lSNvijKUWq}r+ad9P1lo(2 zo-23F#V-`vkBIlJx_* zGJ(^-fRnsU=EgoSylK$OPBRaJ2fd^tqgV6Lx|cAri=Kbx+fmq2NVfw$ATGQ|Va7it z9>y1~At&Oar7Z`y{Z>rpZ)25zJhdEo7W|m|UxR=x*~&W4CX}(euy3DunQZdnjipWA z3@O=9_CXipahwW?pdqzVh^YR7Bz(8q(H}Xq+BVtAwzyLenH(ab5ICakZgTyZZUSIz zJ5v{eL`}BMM)z}Kh1XY-6CDW=n$)x2Nz*@W`o8G~%^nFyb|k}DtMC)_({(EKo%>kH zBuFS&_s0E+1#afhb>0mgCZ! zQaBc}TY8kyKr#UEP+izAsFLLTYVFgOD4(&izPak0>+Ze%y{dOEojzx}q4#*$C2(L< zRp=d;0w3uCCtc#(Y_!_Q1OqIlS?(P{+coZu`05wAo3dxWUQQLth`9Z!lLh>lVM+5B zTE(%Sdi~g@Khf+s%r)kb{NBj{{xt)LzC)Ckna-OjVj;GmeSy#Q!<%6}80R$Du5$P* zJizA`&6%vo(D1S&nT-IqX9Qa;-xfL38CJ6uFu+UzINF;QARt@WrJc}i{0Nj$Sk(a` zgnB*8)N#v$B0n28Or;kbVa6-GF9$aB{^rpOf(GuRcgw{US`Lp4Q@FMh{go1R+g{N- zZthzj$WxpB2n8(T<|&jVSo&Lvnc0sqE*fc7ieKW0GHVt~Ed~I{x`$Rcbb1BBirFh$l zjcUxd_%{W}3{X_#s_z_&zh5WLT(S5``>zxG(fvUq7GY)KMz8k zm{W9URzh8JALcon&8MN;Roc5u64l>^9ARg%yGO_BMj*DJp6-Ff9!7yh%4r2a*=1NA zVE}CJ1Cn55G`aQooCB=iQ0UN{E6BCdVU4p3Rm_T(5AM zMQXjFn7i(EnPwyIYkXGHBG6P5a|#}GZwCxCRMMU&J%c!|qjdHBXY@R%x)^jWo*mM4nApmJHQ^m{ z4dX*Ee^bM!s(%lI18S66kcy>8pMaJO7U9wpeI5*8My;3iyfo7w4`69KOCgkP{;Nga zv>YYp0wDS8Zmt80C5ir#QV$?#>3n(u$eEni2<#rqr*lS)`J|zMRJ*zCcK{A}7Ow@@ zn@;;NHnu=2sK}bWev?9i%lH-1aic3t7nCL+{snst>qX?_pe^yB%OF4bN;k3!YY3SZ1eL-%al zj-CmERSpNod>hucQ-U*SbqXSF*E%Q@+Gn7b|G2;XV-1^Qfr-V8Ulj)Z-Y&*Ih<$GU z9g#+4XozdfNvG+rT$6cL|H|o%&ecV?meB^hroUzy?M~u7I3xZ6ckqA2XR8PNrv%Kq z`k$DromvdiF^XY=Roe+}M;-t*?4L-(8^wgmxdE=ECvkC6gQ&gbPdA4Wc3q>hghUzapz;LGYcH5OMsVuN?Yaz=!IAK)$(g z=(qg8O9S%O|IgX#7uEey1B{hLJzXdPO;U(Tlq&B>3BYQ|jdr03U=h3T6F5jI0=ec} zkRAm@w|v6%B(jJytJ$^(gg{$uURFR?RrbH@9-^*Q0>xv3{Uf|OzCL0!%F&e*!c~%{7A8f$fUM7tsnAUoboE^u05`A$c%OeKBUQDScV zc}}~~NL(Bw=js8*!_=%&2z)O#?!$wVX8t|6#B?Z3PJ%W*V?^m?E3>|a^{w2qP5z6Q zYzAuLoc@lfYi&&L;S;4opyS@IT}j%zqrVl^-|<;rB=EVN@)ACHb(ftk5>$2ckimll zT}r4-V1iKla&bY;_$dx#-IiNA%%h_L@53=e7nF|%qpv4>BU!&BNUZt(+Z~veOM9u1 z;zkWP<}B=-4?b(Ww#OP>!mQs{A~gYNMPawZDq-Er0O5HPW|^|F_mNJk3g|3vWQ|jJ zf4-5^1Awy3mdjINoM(IVN2cuf(mp^vIKpx&sxn(|NyDkgC!zqk@Y>1xN$e)QeGiq*-&SN;#@ZY{a9I zYZJre{F z)CE`<4C`Vo`-Nuh20S*B9*=Oa=K?tGZOFa=7GsH~liv3TLY_a!L2{)IdPuT=c%aPs zSO6jdMy|yb)+lhzK-;F;-r-0QKca%*766YYM6m*?>&EXwYA<*eXLJy@Cq6%d%Wjn7 zU!?hl5PZ!DumD@@w~-_kM16FX(OvpIHal0&kFcE1;g=zAOow5Hr~kL?7;4kmHEXZj zeeX7sk$@B7vHk~P?;x3`s367vW}4~?-I-LBkPvUWXG`R#HYD3&fu@h=^~DFCj4<|A zT7DpfMl1<(RH^eraQCo89XR|jHW3Du70CG|K+;ea{lPAU@BDlmxJumrg7W6t<7dI` zmW4pi`@63?rh9NY_VB=TK?1fDmKATnI~cyHOsnC6M;u*JQZ;ljidI2|yRYjk2SWWY z69baR1+!Ya^C#rb?MpseSWATo<-V}ljVl&FQU#EPIhJ+1Vk6F^t2Ol!SbezafW-xnKL;O)n%kCviV2O!FWL=ySmMq>z;;rOd@C-v6iAT7lc>Z zz{1$+z*t*gEKf6(%85|;2O(Lk>2THEVTpCze_-e^fD}(pa%N+T0-=N=^mkxTIT5So z`%J0Mave6Jv4_P1UJ@#dyqI0`#BNpQhR$ipai{0wK_A;xp7aGB7VV^OHSdQu^MqJA z>5DXW;NWAc6ktHlS1C{+nUTZNLVMgd#%QG+Oz6Rp)KbwmI zlB||%x75Sy3RqZM!O8Jiruvj5;wAGt>QoI~1`2HKW7gDY7P7-L4k{r6~PCI7J_(bk! z-hvva@H@@)QMoSM*Nd0zbaQ(OI%aLDss8LHV+%&hJ}65Kf|v(nIoNK-^_7;|3^3wI z4m478@js-#3t?fyd>d=2D$OvabUAwBY-;&Gd9(h|wOMs_7FPz5%Vqm4=8;<0qh>%% zSM*X@pm8z6k|lSL^_l)Vyw}kG?XPBP{S= z4D95ZIZ!6d`f!!Ug$0opUo(_8V3NFWYDwLWygrDyBe5t!(Uwzg!b(v5BY7#ryr-nJ zU(?#XEf!T}y_yP&9|zUVfmn;a&8&*!CF>K*bmwY7$pD*HjV4d0z?w$IEo+dQktP?2 z=&zPu>^g>MkA6)r9Z^1DVfmH`qWZ(AW-Xjzdm+6Dq!aK$hMT_f8^2TZ2t==+3KYiZ z7}XGU)d3M&WwPbZxj!Ea>k=X1)w@XL1Y5xfW)zM06Wv;bv`twVX! z5%3cTC>oI4o=R%g{uJ^p08-*$vSiUpdn{}Tf=GG6TYO`l`bU%nn7(YR#Gf2EPLX=}mj`hCddl?ti;qYL>17DcM+y97`Q9 zft^fH?BCa{5s7DKi^?mrV1~?r;>NG)obnT4X6a4koy?UAHOWUOuWp0#JW^I1(J2A? zu7}{2Sx{4{0+bOQcBCNa;XICQuhvu=Eza35Kto+Xf?ICj;(o5*y>?c-P2+DG`U)V8 z^lVWF~MtvNo;snv}_`};%V*VNxkImAu>hR9(nPOiqniZG{WcqqUiqEb2& zPe_e2hGs=3ox)b5)zqqQCcbE7l|Jusi{ECAbZXGbk`nvT)i==~ioCOCkdhtUP(%4k zO0_*Y4G@s!J$s=^y5@q(uN|Qbp`1{2a+QVhbIEEDADu7g5=M0}rD0uI^>lw9`HK5` z6?>FfSE1fmrMzQ0Ji~m-b}MI8MH2L*tWsez`a6!yExA#{CN=CgK4>J5mWXm2V5c(i zDGQviMQ+>4Ud;%o8GUMF(Do`72n{BPUD>l$Up^fmGa|Hxl&Kk~Cp~Y)SaC6n#=FYm z2Ww0tp7NFLJ*R>nfAi3l7IXbxRN4_SMReHmI)3_+*hIq?rfr>frX~iS@#DSNvCe)m zFO{Ewr6MKCXlWXa$EBe7IqikoP)c&C=SKE*=mp7x;X6f-rjAR+j*19b+l%F$t8t?+ z{Bk0;3QO+9ca-+EjX(8xQ{VEuz9sp*=u@9lw5yt!!9>Bq_L7INj`MCN<7 zim@&r$K}@OXJw0}CziPDFoe=!d?Q)AL55LsVSSYxO}VJeLA>?)pTJPh7N?WmeG-Eu zQ0d;hE(1R5=ZI&6eB^~X(;p}l2$N~b;WzNdA{wQxePY1W+kvk8F_o>_N#O2`il1hQpAPh>S>Y zb&0;uY*#bPA&gcMmCdKiV-cu%^L^h_pORo{U^stHN<+c(LX+)}b(qTmsG|FdK$aX^ zbz7jyCg<~6eJq?d^B}X z>`;j(@0z)8FBY2T31+9j3T<6cmgR5jt76y7e7-^$`G)YedccDYW0j-RAH}jI-v%%{ zmf|p_Whmu*NB4-d6FJ7WA|!>7=e+`*6uviWCjc?+N(%GDfw=Z)p;w)}f);BGlo4QG zFDm?kTu=eIV4Ja@g^iiHR$>28o&3OP7d5`-x znQ8+plyCPfY4Zk)_Fu~K~>o^uF-@&ta?n2f-^~)?f z%S`C{$2P4jNLxIpEBuasw=vsNqIW^x1Bw)%`35y4@h1pf!_#mzCNW-kw@wuCO)CZC zz;1gcK#9IEZ=ZVXTwDy~t}vmmB3;B-_x9vJnqR2g=cC*53|dD-o9;} z5RETSG*MD0o003M)_)6W8*r6BB)J?J%}1rH^1OccERsY;u#`N1hHX@yT-^8J_0~a@ zJ)&rr@eZ1~E%P;$p=bx?T9>N0J@9&2F(o$%m&YNOgdO^Q@D|b$dQbltx^>lNy~P%{ z-#UzT|Ac{o{Ydh~GsVX7=l^Ns^?%3lgGXON)dUY^W&X;V?%hKY5<60)GXtPCZQBRR zOKSrz(+&2-X}FGk%?hIbHb7$MOpl~XlbOJG`I)A<+D-xI8_&G`JC{q1&NVLJG%9`}9sH)?bHxV|ekaPegX3|z zIS~a6S(htUMrhOXOHVU-A8dSl$Z^EOE^fP(QvJrj4SA=n} z#IG_TEk>51fsC`wxRQF}Rx-vXihXJHeOIgyHfL6L7}Xzq|GPNBwi&T;|8ESC&rNfr z#s&J?$C46B!XTf$lIRa%McoooTQUIwARi><>pH5CT#WD+xz-oy$@yws1k0H zlC~`MC6fy|aXUIXu1%B|PHjp6yNqfCQS{#McOK5|} zGXoWXLV@NOYYE=Rc}u&wvGGfM{7>9(9ntI-88e8Rxc+ZbuaR^4fQ&t@e->T^gK>?D zH?Lt95sePCSJ!9n@_2n8-nE5wld|)j%edD#d2R#qc?VN_$ zjwse-=+xtpjsW#a`|NgjS?0-xYUCSaKv1wySi3=U`mW597I_^QRC6%#@$q>iH(7($ z)CJzUg9xj0c8{Th3Sf&%(dW-W+Ik;$H#eNDuyYDD1iguL6w7;fusv%Ln2#@X?|}gi z0|neikZOMfjrDTxcdURPOVaqDSB)BfX9%J%C?x#x@N|Z>_O75{d|4T9U0*=C+nEzw ze9yLsGX}YgG+kguAPGAR4Q$!JQ8pW*nr;UJG`bD#hBBuAwIG&B5EJ(QwMPDbl?R=R Yv>inJ<~iaD#ejd3VzMuCM76#CFM|-EW&i*H literal 18438 zcmbrmXIN9u7d1*pgh&$%MUdVx0Ya~$fYJn{7YRWSLJPe~2Ppxh_aas4y`w-NbdcU_ zq!;Oew42}meeQGL@AnItbC@%;Cuh&h+Iy`@#9Iwzz(e|nI5;?f*D5cyad7ZLaBy(( zAK+o{u!RS0U_WqOw3T1rRE#k0U@r))71R}QaH?ZTZ=i(O>t`?(ZFL+RZ%!PX0PK_h zu(txXad6x~I5@lJI5?82I5zIovdv8l}b+Lvbgsji;2;+v>Re0GHeqD%|zz4M_%ja`OmW!t|t@pv5!QKb;yjG zTo1Thd)9W}i_e+df|2?TI7_~8^S|`Dy*OkjD;k*p5(PZB1h?%YRln}@InZ)DM-9Pr z#{eWi{><9nj!X(zMGL^`cYK=3>h#o~43m_hAhtq3TTPVhw|7}lJZ%wrz;A>Zf#Uf#t!5w5y*_F(X&Zn!HZ<&r|;RX(`%_GC_H{G{M71?z{+3$ zn)|0a+C&0&CR9aoBZk5dxLHjo&ef#E`{WDc)`x8VXh;0|{DiNUD=Xd7?-7TO5k zWfEI72{AaS7BL5oj)@v_!p(K*LC9XAZ9(g1Y(f9S*`fj5JO*1#iK0-IO(r74NX&B% zS^~=6;D;R>5G`%+>thQg$ZQ5UU`PvFbf&cE@BObYADd@jLTbg`^hq~SfvF~?e>ekxkK=jg>R0};B7?Yw5SZx4o{^pL7jU>TTpsy<}% z?5E59jO)yqe;&W z2SSYwX_p05a%TK?bni@X%-{5JWvl_BONG20${-+RKp6oV)FfZoRqkpgcNh8`!#`wwVKuPJgP zEyG!k4H5|kUC-b)_W$48H6TYqk3*+`+O)_B8E-cr=B34p#4$To+L@P+D-sm8yM>kT z0K+wA4?8l{GCRVwU*W3oyyaSdc35)>}S4+-scrvBK;j2T>_`bqC~kLQIlQb zL=4X?AsV?6eap9PBzk&E5*=(8_JP!-k)dLZSCcOknw1Zu*gyn zk-}Qf3yEVHMFRWKYWkqaXHa}3wZw68T?vJUYf~wG%tJBcV4b={5~PY3FxdrcU?_UK zY+!HcxH@cUfH1d7BYqVSdUo-0xu-6Vcdaw9@;xWL?Rn(#Fb-EVb6!8 z(L{&R8%Q;pyy{6TfOM{qVGKA|7-kVDX0BMe=c6r#7I1Sz`ldf~?VruWKgv6YfL~KT zwU}?+eYk{}lWwb115O-r9j|>HfUx(6MWwjfV)_ueR&lcbf?g8NF(75BVaGMd_`-Uk>2HC5+T2xwn@IX8(IA(pZN7bR$Mr_qykGM* zmPQ8X7ha$FJhbQ?g!Xw{$oY_#2%G1Xuj!4fi9*siG>oj4jhweoO)Ysg383Rb_RVqM z%@TGyp@);dgzCR;{^GHQ!STvg)gJe^K6H=t#C3^_2tlybd6^-zPw#2 zA?m~UB10N(!WIp zV-q5&*)qs6YJ2;Z|66(swVX|-J3i9mtR1bihL374%a#~Th5z;i_EJjq0Ac(od)BN! zHhDJ68}4?5`qxAPcG7{b?#PqM18Vg>8-zrW-+q$ zZhXTCW#rtk(k+7J zBn*|1mYEXEW8z>fQ-&h6K6~}zht8&!gv8B#P)MS_?pw5gffNZRz#{9;5>p~RjNsY9jZaw@`zjK+TMk)pJkwwx)_Hqek z(D{uBuAff1iA(cHTn$-|i4tI{@MK#)9#pQi*p^%TBM3XDNZ4+h?r;#PdIp3M3q}JR zwWqx=iZ*A3#m3kDl1~~i=!9F9+${dSA zK>^@@fR-3GAxC1=L|(kuD=7ty{GF7@UBRb;J%04O3Zkao*wk{%UK#_c$ga&G3&h`zToYa&Ug|B$ zpU-Hp`CSJg$v>xgL^OQTad!PONn_g zoP#gDEi$HTwjh3m!(#?djRO}X`8uf#q($Cr8*v=UNK=eXwM7yd(DB|>@2XX!3 z8M}nFSU+FiD}5=V_NmBu5QKE=pN+)!;uL#~W$*0>E0V<20EY4W&TQoygn`d?e zyDk#IzCJi8SxP9tMbCSywZ@Z#EJ8w=Z1buOUeSS>ETex9{_nvPSY>RLdyjEhEfU95qXg~WOx4_-d)*9;J`5wGtLvEwuSPX z2pqTqX&8;!WM3GNE5;M#E>#6V%z=MF?h7OF_^_rnCz+j{b!xFE)JTSrxs6ml zzkG_AlHG1zoLDCNaW(BPQ#)+k@y6g3vquKz=WTs@Ko{?nM`L-8OAlewrKdF|#JpQ5 z;8eB9yMd>3mw4SAGYfuX-YJg2CwA3Kbr%11CF->>n2HZW7kY8BSUmwlz$3soZ+TBqPr?Dtiu@sAqs&r`Cu{W!F+$SQZx!osxlWMakanv?4?LG0SX=w!@^r7YCKxsa2gVlm(A? zP*R_ZpTC!q@ZSI$vtGgg*k~a&FPtlFFQsJJsm>_unBJ~w!62My8VB>DWnj39NYb_g zbodR#)kx%CjD2YyEgr+u9qw3Xb=3bUxI_>9FT@BRaMhabDElvFDUsqwLVgwCqGm@w zL*ABP=cTsK^a1Z%{4hjd)-I^RTBhz=~FX^{-G{I2d~NRSM_C7 zhWPzYhDn)Jvlk}Jy{sy*_H913JT41drr*Yg4UPX>TxpwRKn*;&zYK2;x%w~O7Q%il z*4+KC%K~57<_aSf)^8}+^~_<*=d4p!U&{kcKVo;J&}q|R2q=`Or4tyl&n=4xIny-z zA^J+u^fRQ&7rW38{!wh~p#L@_F9w9Mx|Y^1Kss~$u4z1Cu+jT(Yy%@>@e>C4s*~9N z#~#uqEM^$~F8W0_<#23>UyiLXwq(6l z9!T_Gg=wJ=UG;Dwem!?CL;Pv^(*FXwCjY~|Yq3$QzrFMZ6+~zLpJtoDuEao;|G}HN zp|dbVDUCZG9EYBp32m_38oco>g&+nyiN>(I9GNf!I`4HGys+f7| zDiIBN8&AX}9SctTdw(p|0ZePCt|Phj`rr`h^>@i5I5$@IA2&PhTU=ofWH9U#XsrG3 zvMPmHvoqn0%o|`f;rRu%pXZbW2TtLUw=izo&PuSkpZ#dD;np{4K6Nipm_U$b+egwU zf9lWEPnLqE9y77PZ?`;x!6WR4^g#~lv5GV<`@edkp6m>wyPHlgF|m7(D%K>~3J*at zhkSHP7EVu}T=LR}!^O+`Mk>R7af}O(We->Jy_V~KNX9>sleK^%CIRMe5_fOhj@}h4`}nP<_&8Ob zesCI4r{^X|D;J9;GiBY~ZRCH>URn97;4u|7-4VLi7#7>wc^Ox{{4o?hLvVzw4r-pd z6K##}0OHS_Wd|w+(ay*}KV)N!hA(#4=Pjyrl@xAn6C#9nY z{#*5m@{+~0zwjDJJj0AL9}~XI&&+(0X(aWph>Xu?x5STifTpPCHpK0m?5{Y5_KTKM{5M;`7uvAKpyE!e$?~?eZZT%Z0 z5m*1J>-cexK3KMm4@lh~@g-6K*8N1#84pHOO;;4-NPaT110cO;>jI{#F%PWSE;{0Gu{&2TURJv>61?T53f(O>Yf6VDb#NW2@k9uA z8sry0yx8UPT*hI63}?+Xu+>*8_m~Er<}{%&6(p z$B8353gU~D_eWjApYvQEzE`BjqKdEuP&TxfU$tNaq!d1E4_J0EvHi$?6xV(TkY_?85Kn}h_6N-`<;wvlL z+|O>! z7q2n(O(ZHV>Xhwfg4&S{G&TnHoVGoVEW!mJSW3XOLD#)TKRpCIL`S@ch>wiBscn)1lZy?)%lHEe*RzxwFW!uyFI zA|{E^eZfmLcV`QgzomWvcskv_h`aR0mZzKN>T9@Dc`e(vPds^)WAJzgNfkUj6!ccq zcYD4=Xf^VKY5^pYFy1&Lxw~I@g~TXIKq~P69;zmgjo~OFOET>AlKJi`>nc@a#L^1c zB1r<5b$%2_AX|!#=$x6p(plxmG?kvd%#z3><7IP?=6?{}m`v{V+a86wh%cTVfgr6v zS^_Y1?gKS1cgbPD8T~$X=lGs>G5W55yrT%$aKE&L#0ji1&ZZsJnm z7fLK26qQht7waz#IO8ahX07RN)qSY9A%jV4{X9>*K8~2aNFev)YZfjPa0oz@n>Sq@ zKli1hy2B<<|0-*mq-#$W2tKGn&3kB{SNflj|1U+_?kFvzz90;zdx#-*WID?pI^XjD zdv`Hb3MtbOWptWypD6dyb`G0ylA|$u?uqm^o_XGxknAae8P+Lr&~u|h`(GZM{x6eC ztuCR)#J{hBl;X7yL$LCWE57TxWcztb@)oLZk-uDGC-vAWsN^d1=5X$h!ok}+0*IBZ zCpR*Vd5hw&Q_TIXzdvPdjr9jiAd86M!rZ$7Oq=vyIUm0jFOwB z#J$Qp!2tmC>;UCozSM7e2m>ybd{Uk#5&a)J#iOe4B!C{# zT-MDJfv-Al^$}u8zviFRlQ`FX?zKuNoj2Mks<5f>kOZPEU1cQkMnoE>hN>~bYQe9~ z7F~6o2tTgjrDD{PeSIWr{I}Usq!rSzC?EA3$vGWU-&fu;z6wS+7*kgY2SUk4!=TIC z50!za)pb5!b7HxRYmejp-ulC5xUi(Qh;i4Y*wA56nB5pju*x@6?c+k+pFF~{$Hw&D zzNA`S0IPQ}9Bv)JJ5#%&!~2oj_prj2{-}cfGSz>9N5|=*onO)G`oab(295o&iQ%}UX`V^DwPt)%kN)OIpi6T1FOMLTIbE+Q%(oMqCwU} ztW~wHKm4Uj=_XA9Eu!lku6v$!7BkMA8qfQn6FZwFYd^cd!^he1L8x!5q!gLcuoroU ziu;`^s#`MiwHx1Oa0d@VBxBV#tEM zk&(yHe_m&9(K8DspH$=~S|7A~)|C_oq#$>SCVvXa3ym%`w<|MgED0G{2uLW1&X9)D zGA;FbmOJv;D!Ne#4J1DfEvhCB*X0eoiCX)_`Hd)z17~l&RYN;8v1pS|fvWLaQ2`SH z%x$IUf3GXQ9v=w9yC_p*2wCg02+6`I^tDwkf$N#WrD3M*pXr42FSa7Ngbz#BGRKjc zdu;+L;oZRX0~TKE_cQUSg)HuXca6zq;gSRn(cc=A^~{2jPzDMwOn)g;BI$ZIxc+gB zS!$BQ2&WRhI=p!$reT2zS}asmU(q^rD=!W`BdhDOaX`Q3;}yjfUmmTDAyBuZUig?o z0PCYg^^E~AOB}`6|`-PpStD7X#e+NQd_?Z+cvX4v@C)5 zNT3ll8PU^LyKt-6A$%djIHA{=8sS3Z(OgTsCC5e-W8a+qnoQS;The-qqFu(*$nE^Q zsW5UwXdtuyhy)F~ttm&8OgdmuOnEY6f1=8zHeJ_^vx77q<$c*f9%;N-p}w{ylfooWpKpAz->U{7 z=;E2mrq5LiR35#rXQF?XZD4v@=`akckW_m3QW;3CU)6WkPxX@H(X zN|7Uy>YY_>yBJzwqrtrgOhsR*#8o0hoNCfIMb$^Rd&kmpp?FVJD+pbRcSSk$UZ#^g zz;HAC;i68WUL%3=Ci6g?U8b@&F`a+AU}^kzzjFv z(=;*gzYGbDHXb?(Sz?erl&pK*O4|23A99TX)woGQZCwAy$$hO)l%F6zWiHY{qOzPX zouaqmQ?`*EY_M1{|Y+~wrf94k&Q_HI#eR;4f@kgdI8i+F@3w~Obb#)c1-Yv4}7of*M-NRJ8 zho+wjjCu=LlwyJ(;ks@jVz^{l-fWqy)|ev|MH!ehb|t9MS=-`>bw;2j|M*a8)N{su z@qgX%!2^hgGF$%Y{J~|1Y3fD949YM~^8IHrzwi$epO${P|Hu4Xvza4YBWzWnk8zzN z2{Am8>6Bws5<|BKf@S;igZ36Jpnj@mH9;-)da;_iR&8R$=x{AZZ*AlDWnZ8Um9I0W z`Dj{J{$K+?5YFk39}mFnsNavkL-_i?kDc**aFY{{NH_rEM0=PT1XuvCWRN-So}YaD zoE~NW{MW8JK_+ne(K4Hx@#&oBgKD*sdS-CUD9vb*2IWw5yJzbz{x$RPUn`#3;xS{Lx{W3;MolKndFzX~047nM zvh1AuYpiVMkEq*hmVe0$%m}hGYjf(0>FGZs4dbMBor(Qv+=hdw^8bkuzNIHEHQmx@Q&%X#H19q#bAaSU5h@2ya*;ebKZ+7d4~X zB24t0Kzjp31eHF>YumBhNDEJ&$lNHp!a-ICH2q!czP+4>JXxl(vaqn?Ad((Y2Nq>Y zUkAqWD1~N(j>4^G=&xi6l6rjNz62du32A*DK2Tr0hJKn-lEGq)mrI96DB6@Sg=@LC%Ojm}gz3~$jJO!P72T<) zv~q&L9-)>f#PC$dq~(DZO48^dNx+t=eR|xSPObWdERt*43a--Uot`D1>`(*WP#*d+ z%6eh;aS1=f#~iR2O@;X(p&`oX(Ot;H5Y}k?fv?6xh@svY*t?V-9{F1(z*EB>4>SJ? z`AlqWIJ)ebZZ8uAdC|IPl70=E3Hz=r5kOZytv6c0Po5Jl_G+>*C0&++jte~=aS`o)*=_t6B3j_+#q7^`B+HQY9tUfRY4V`PL>r%T*xF~>wDB|>DwFf4Vf~JJy#$PX$^uf0yIzO~KM64sf6lcy zWMV2)JANmbzH(Jk7|sM6z13TY3mWFeWuASunl?lKMTx!5O;P<@im}?BKWDG{^Hv=p z<3?v-LTlCKF}t~UJ2KbS@?9wmBQ!TZ;S`a;vX_;Pnmn#s+U;-3XYNp=Iexp<)L~>F zTe9G~ES&T@rBN>sk?k%WVqoSht?q^Rm}$0Z49ec3P0e6*K#5P-ig8VJMtSZBj1CpP z40mRWCwn3>_mp0^%Zd84yk#=}U;3SV%|&_;bKw->V+&xc1NT}-j~7&CU^J~`Du33` z(DpO>nr6c!0h<*U>=6I!h?i*;&5XfYJ`j2NvOR7im2>(hU~kX{7z=0KQ9$>r%M6Gi zeYl4W^RW5<^SKl92H>?_c(11rMfkL#rIsbe(0%gbDe_=i*<@zLl;K z%5z7i$>qwi(=*)0X}Jrl2>Ye0oUF-9s{l0wS?OS*iSOe9q8=||PLk?vadk=AbqV6j z$3;W-BE`}`e~vPzg=Y1At^nwwrsK#ffccA3Xd3`-_#%yQU48ob`Sob0ICxw3-!oSd zqr<7N6Z4xTRk2tq!?RwHnd{#JlS^!>i4NU9w3aT^xnl3+&cI|r@a?*%ai(BN)?R?@ zKbmX*>56oX%N7wL90yC2A4vQeU6v3lh`=r$nkoxdAph*I@S z$C&`n$uu8!NY*oPIGQH>Olg34h8@9|HC}n2Pe^SA`KvpQ3y6oA_wNL&<1H5(M z5}T=?=Xci^YFg&7#i2$}(7o{O%Rbf^vav~GWsC-IjvGN{F0f3OQGVsmv%Bvssv>2{ zbM)HLFfH*5Xx9Wi5(SzF*T6yKAG)zfavGu@1v0X@0av&SXxTthniP`x3;B%28I;wGWd z(c-c|F!du)6ZVRkNkRWD&^(&CxkPP z7R4l-jrOB8CS9`d`|p8ac)+npx~sr+$D)Y&sHcNW4VhP-F}CX(Sz#oXPCZ`@5$At| zWpx+ncfpn(_ZY6dcUT>VZYwL?+ycwlQ1i8g?3OrGXJKsqO@XqNMk{*gQ_Zk!*_q^f z-)PsUYKx~nj<*^9Es;;jodS0%nIx9oXXw!j(^Z35uB{MD%;=}Tw`~{KpzLJ}dT599 z4QUGUx;-;io_*x<9bg=^7|LH%+A4@+~!KXy)4K`qzEk|RNAXYM&gq?k+ zHb1_2128;N(A z{!l#|^VjWKHq~D^F>kxQaz!5dHo&n0P#$}mKx`sR$9cHdlBzpN>fBPUgqT zrl&onS;DeCX%Sm#W#&MXw5f#Tr^}vO$O63a6M+75yt!S!BIjM49dLAFS5T=$4Y=a- zr`>ua6W1GtI@+>tT)M#WMegrMxEL0w7SVS0^IX@ynxBpX^rSR(N;3`=7Dk!U5ZFL8U4+Z% z+vwq2qF{;g)I+;_b-4zC^SU2C#{_Y6JUM3grgTFmhQMXt;~Za=Jz1Bf36VNN1gb4U z1sA&=mzCc%5BlPFI4)Y!0DAJY*#mIO;9(A~aUegeuD9M0+Bid>OSH;7xXpkb#H^ID z9}>WR30hEz&>;J@L;*2n-y&8Ud@XwFk_@1>R&meycBxVPqFqf5vp`{Gtb;9R();4Q z+#Lwlkh`4*Gd>kY({GmqzHjq^ht)&d?1ObYud>X^OhMYiK*%Q(Z*&v0wR2olS23dn zXGK@)qiR2hJm+Sw8zJDYagrymvwFe@_G?Y1m!S3WDA|6;S7 z65sa}CD!XAb;Wr@zi^i)WXjaI^7@Bg*iKE=UrWN>Q)sqr42OOrm2#08_yddr-!RiQVFQ>u4*@8J*Y>k#+Ou$9Znt)qx9KtdeT z?`-)dq!_uIi!1WmdF2ElmJ4OSYwEu6l_n;KX{}c@py5y*pEO<7)uA($Fn;E{S;x)d zKXKZCo8Q4Jd9p6DZy!%4B{&a=gdK}a7abY3bOCo)k-WRFK%DBw4EaBsUMDt$eNR)> z5CtOnFLext$#wE2HMkYs6EP$v6VgpNx5xDrdgRGZF3x7;u81#>f;h;CaroUFL+nnF zEC;=Q_Z72BeK**Qb~C(`VSJ{mso7UVm>Dhe^6B!Et0WCW{U7hLwCT|k1{q!O{tz$) z!ojZ64 z%N0AJTCSQEUF3GeN3S}#_N;R3Y1VBt%DVXbCdf~yIMk^wGu3Ri??M9g&J2>%X@BO(*r#?74#vFY z#Y&_+1^y<+=ew!NpYS}Hdu=W0tmRBq_wmu24#KOiU2eoe&p5^df(m2>ziC@R@gfI= zz8c){^q>hS;@>57v~3O>0jX!XLz31tO>5ouAM6CaQXne(B;Vhpi93t1edbbqRc{Y% z_hi5PcJ$%fSA*RgH+zU*E|Umy3kG|_|N1p(lgj#$P4ABR=}vYMs>!QE6DMF;T}27Q zAoDJs6EA>$fe6V~(H$R7oflM;_CuDCtzm~Vo`S&Oq=f=n*}3`vbGaGUM$G<)`5V}a zCfqXGk?I|fUoRyBl=N_s0CUNz{fQ?6utth2`9Y_bqf*FMCt|6%;b=G*5DTi1B?min z3WBh<-15JUB6<@9PLI44Rm#G&9U98uh9N|9NfHPGEK_M4fL~@UC$w^{dk5Zf;hrWw);MIQ|u)(K>6|Pnb z(9)b!s1}i3ft1$j?IYYEC~>;tZINMtEta`NboO!C(7tvk4;fnc4-pE>S(HDD9Qu;a zLo7m!UH}Rwa}B)yiP+T(d3)wD#VSI(LsuR>lVv{i?YS%&kX>QFJ9Mgh#|X$JT&J5z zq-QLH(F69{tRY!lgAixPsbs9yj678aleVB3^%wWQ-A|T+?{jtPW1DwRi`5v#AEk4O znpQJdPy32Eru}6;;)p&mS zCut>$gfe3KSob-t{{AX|jPtR#pDg{I_h&pZ$9Vbvn|y)J)cPn9OM6$52r!Y)##8jw zoBp!>OG#}~7|jTh-$W-j!uRewK~p}+QM*WpHSo%YrqZy$s@gA$0JEdjWc}>|CJRHysc2ZBn)=-)Kz! zPT=XH{ZU3vUv2KYz-t;r8&-GYP-D{NN89D(%{3 zhqG~IoCImWN~TQL??gG8DUZjbRfe2`#iop_ssLw&HjI9l&*hRKNM9!f- z_xb0o(!EY}Id`%Z&^n!z3qIb#4cgo_V=@{dHLZ2X5*bpAs;`8gNxclH$wfD1(K=WkO4KePu@Oa0nX!czdgVUrZlL5<;;Ot>HO(bEocHY^`F88$`ucdRhGHQOfT>c>bNrD=Z10#t~zO!6& z0vnmQ$|jfyS3Q@Vq_5&k)=C)O1i_oWE`B5Uxe?%u&{&kMO&7C?s-dXhjts?kOjT}( z@<@LP-ido^q3Y~l*B@=jZ9l2#oLkU96h-{rHt@OFnZrjxtn??ZDi#V7tOvsMVxMi(&ye=yVx`6cW-K6g~U^xdeVOFTO4}Ka+-OutP zg!M-`fRHPKCOo-gj5^w6W>!?II6wWIGm$YFdA9F*?icc*+^(M_DZ*M!&a7N-_Ssx$ zhUSYliQnexC{HE5@19y@nDy2sWqcP<<_=wg;Ht%9DyTZP9xY>`NM!06&Y4Z^U>GN^ z>>)jo%4!HtO~2-^=@4gE^B%jW#xDVJMglLBCfu9n%6aSso{}HhNtDIgB)ZvQe{gsF;+l0CFN%rwTO`8)bNM3sWwV< zbzzoy8Th|lPmE!Q{YN6GNZ@;7(X>nXr>*cn>O>U&3sxk?MEI4g#g+3JW|)N-ZY3+t zBrMoha8SV$c6{ji{>88asK^xU$dvk^g&9xf_RU`RytC{(EPT(>=;d(;LYyMH(wRd_w6gTfcG}id zUOqh!r`<78A#5ZR2-Cfat2E3Ilk6SH({l_$@V|d98P9m6LxNy2l!h4Ab|xfQ)f2y; z?n=$l1vqva{iajRo`Qvdbrihb)K3{7-3(t)1&e+kxhD~I?Oj+wQpufWQ!}W@R5$@ z2gk^YUXWmmPvdeEBXB}+#%Puivur*MwJ#-Vys+Y9khK3dW|U6-zjJ`ofMI%G5OU_% z-~t>bi?nvg0$|cSer5IuBO9%udhcqWZFwWhFR+2Wgko2XdOj9ekQROT^okz6w|5FQ z#zxVwL({=bZ1^8*qoZe>3~igQU@pWiZka65xuP*_t{@U@=))3rJf9N)JrF~l4&Qd< zdo@F>{M_JU8BfBL< zUh6%Zv783K!iAco6*X}R|mB4VtMPQJGjk>DpgU(^|aODviDlO%Fa1FS+7lG2-A$;IsXy%T@UPD zeEiDdEqmls1_K#=AmKEVzKM_QW`h*mVPiqK0lZ%nh)U35q`xoMCubnrP8m7C9anM| z8?F$Ch7@hB5Z*RSK73&SrdPN~W=QhCpYTYdUUCaoRRYLxd zban9G?@sQ?qOH@-U4UL1{n6e`2L48YSZJFC^=$i&eyj%bPgl2{JqZJUn_CHG}c@&gGvB*@w2l}xr7l`Lc5nYXJTGhQqe zS)4OmDDeJ_~Nd+ zF-BBIvJ+wQE=<(F-TG%bY9;|xaLS1IYoB*|aMcy;va*@lN0BxJdntWBo-jFI-42|#p?Y`eS_4&h;-kX1>m=^i~?cBDmCEcQTqqF$xpAi-I z)FKbYuz3KuXB&nHq4i4Gq0=7~UUt=k;lb9K&5AaKRl6+BM9d)0BmQ=w)zaoM#>!>m zp}L+w=Y%U{^u>>_3zK)RQg79U^IYiAAB-9i#^;-zHjY%ME0~|{o&gkpo3xwjEJU1E zYQ@+D>v3ZK!tjl=rBB)E8vI)I)%5#6fdceJ{;ScI<0q|1qZn-ZrQSQei<) zv4SycT<_7%%~5nd4C86sUbpYe?CmEF&~uu~z$>sw9`~uhzAJO8v;L@VZEC zwCO?`a74>eVgE1hEOQGCi)*Fkd7C4j*$y3qjT5Y-7FmJ@jBVDP^=$ zRYRNmrlgf_PN$AB7QUPB`}DIH#E>Z;TZo{wI}Bou)4ypA~NKQiB9^n(o^+M{iwk zz}=&7+os?FKG~>OqEijWm0Lnv`M7GiUVFJ#SiZpylWL2zC1cnB%;NnXMN;)aAf>@`6Qh?|`2TA_}p zED(Y{A7tk8XQuHJLv3UFPRzGUSS6G9jG9~&_NNG{jIhCV>A}BffHKfaXjEJ;1Wfa? zZ;APTzfw?!JwtN*Q0f+69sM1ZS{-_vn)Blm85sr@?CO5fxlViPd7xRa;0P%DFTu^* zdfTpqA|<>6bvmlL6ko3~R^ly}!rRFUjU51Gy4V_Te3&|}OH&+}QiV~Y?`41b5BEx! zpLM#{mIo$bkGz<{dfzY0(fvPNTxnDjR}^MBxFQu$gdowPRz*P&&`5$JVgn)(>S;76 zl9CpQ#z+t}%HncB0RsV1A_!Wff?Ex5*+UqUdUD$-adY>zL8?rZVA=WZVCIpKqIW5>P{C!_tgccKng!A`l{-C%*n@Zx|As zpGX#p{7Rs%%aOYJDk*2!@>(HxEt(_RRUY#!bC`kU>YpUb-~mzkW)^rnd_MHGBrt0& zI$hLdLbI1C&ISS^A%f_^tf|_@EPvRmPr%ebgNJ!-lnwfl!-n+`+u_Ca)2>UOADFtz z_{xm^l2X@c8Z`C4;i9RH^;JH&9ML38s*V)qN@@m?xc#OB^A(rZq8lk}D}KK!63e~Z ziDcWn=Cxr1rd2h~VaJUP3wE{#wI-t!jt_4ymd;4FN5hX~cL`6taV{T_G?k~Nw$SF~C}ux<&Za9Cl38}Vm7m_%wP+)^ei8Xk zV@&Q$Y42?^)jZSr2Qs$Wofq z7m6uZ9y&Kfd7Q?4OO2bzBpW*+EeYEwT6_j@82l2!&(p0K?;P$Xw}!S@Oia78bZa`! zjTO*acFaA#kiK+kVE1tWkShefGprEba<{(H>M{CTTjxhjyVOMPusuerEvapuU&y_; z>II|Ys0o4V5!H18HGL(wYt``EsJ2kZw;w4-;TD-0K!d|aE+-(9D@;V9{bxr&Y>t>i zPts9MQsW7f+44-W8Twc{v^x;AD&Mj?`l&hFKNVm`e2ys2#C>|7p=`??3bZL+O_3fYoJJgKkghR5kApv{fPPDCH}rPm zrax$A2J+dD!~RIx<^70XLk^W6(425-I+~_S$rqWt?|beLC$YojhWo3SW42F>l6Div zETs`Kt1fC7n)8!?lM1|e^U=&p(nj=bPN@;ERfjzbu-~PMTKqPvC!k#v;JDi2$Nt;} z6oZdF(IecMMHO{_Rk(`Pb3n`i2sU6^ZD&NPmu+yjY#E~nUxufS?I|SfbO}14S1$4% zSG)X_1oOKFH2_Mq^5<>DtbF|j7GXW5K`*@XT4*+Qr1H!yyU2W#e2k3udDwgDTtKz|s$mOGu0ATQu~< zK2c?>3w8JxsOsLc-Gun7cx%DF0($m?gqtfV4ULQ(QVN#wPD()a?bCUJe9l-=G12(6 ze>XF06RU!b;aN&zxt_$1Y!jC=V@F1`PDAw4aJX}h72w(Q{fp5>PHRv+`;U*C-q4mR z1I7!_N?Z(N;rS`@gsJNKGN2F_DAki381!(CB9~m#K<9=DJ~TH!kP~fadtrqqb_{yz gazJPovqZCNIl*#`qg4eO4(ieK*-P-^d6KXE3!#jQ0RR91 diff --git a/docs/obs/umn/en-us_topic_0045853504.html b/docs/obs/umn/en-us_topic_0045853504.html index 5c3607877..d48cd6539 100644 --- a/docs/obs/umn/en-us_topic_0045853504.html +++ b/docs/obs/umn/en-us_topic_0045853504.html @@ -35,7 +35,7 @@

If versions of objects in a bucket do not need to be controlled, you can suspend the versioning function.

  • Historical versions will be retained in OBS. If you do not need these historical versions, manually delete them.
  • Objects can be downloaded by version IDs. By default, the latest object is downloaded if the version ID is not specified.
-

Differences Between Scenarios When Versioning Is Suspended and Disabled

If you delete an object when versioning is suspended, a null version with the Delete Marker is generated regardless of whether the object has historical versions. But, if versioning is disabled, the same operation will not generate a version with the Delete Marker.

+

Differences Between Scenarios When Versioning Is Suspended and Disabled

If you delete an object after versioning is suspended for the bucket, a delete marker will be generated, no matter whether the object has historical versions. But, if versioning is disabled, the same operation will not generate a delete marker.

diff --git a/docs/obs/umn/en-us_topic_0045853509.html b/docs/obs/umn/en-us_topic_0045853509.html index be656d5b8..25d96dd7e 100644 --- a/docs/obs/umn/en-us_topic_0045853509.html +++ b/docs/obs/umn/en-us_topic_0045853509.html @@ -1,7 +1,7 @@

Configuring a Bucket ACL

-

By configuring ACL, you can authorize bucket and ACL permissions to the Owner, Anonymous User, Registered User, or Log Delivery User groups.

+

You can configure a bucket ACL to grant permissions to the owner, anonymous users, registered users, or log delivery user groups.

Procedure

  1. Log in to OBS Browser.
  2. Click the blank area in the row of the bucket for which you want to set ACL permissions and click Configure Bucket ACL.
  3. Configure the ACL of the bucket and click Save. For details, see Figure 1.

    Figure 1 Configuring a bucket ACL

  4. In the displayed dialog box, click Close to close the dialog box.
diff --git a/docs/obs/umn/en-us_topic_0045853514.html b/docs/obs/umn/en-us_topic_0045853514.html index 2203285b2..4f591d790 100644 --- a/docs/obs/umn/en-us_topic_0045853514.html +++ b/docs/obs/umn/en-us_topic_0045853514.html @@ -1,14 +1,14 @@

Managing Fragments

-

Background Information

Data can be uploaded to OBS using multipart uploads. Fragments are generated, if a multipart upload fails because of the following reasons (included but not limited to):

+

Background Information

Data can be uploaded to OBS using multipart uploads. There will be fragments generated, if a multipart upload fails because of the following causes (included but not limited to):

  • The network is in poor conditions, and the connection to the OBS server is interrupted frequently.
  • The upload task is manually suspended.
  • The device is faulty.
  • The device is powered off suddenly.

On OBS Console, storage used by fragments is charged. Clear fragments when they are not needed. If a file upload task fails, upload the file again.

Generated fragments take up storage space that is billable.

-

Procedure

  1. In the bucket list, click the bucket you want to operate. The Overview page is displayed.
  2. In the navigation pane, choose Objects.
  3. Click Fragments, select the fragment that you want to delete, and then click Delete on the right of the fragment.

    You can also select multiple fragments and click Delete above fragment list to batch delete them.

    -

  4. Click Yes to confirm the deletion.
+

Procedure

  1. In the bucket list, click the bucket you want to operate. The Overview page is displayed.
  2. In the navigation pane, choose Objects.
  3. Click Fragments, select the fragment that you want to delete, and click Delete on the right.

    You can also select multiple fragments and click Delete above the fragment list to batch delete them.

    +

  4. Click Yes to confirm the deletion.
diff --git a/docs/obs/umn/en-us_topic_0045853553.html b/docs/obs/umn/en-us_topic_0045853553.html index 0f3e4d1da..aabc68e9f 100644 --- a/docs/obs/umn/en-us_topic_0045853553.html +++ b/docs/obs/umn/en-us_topic_0045853553.html @@ -5,7 +5,7 @@

The logging function itself is offered for free, only the space occupied by log files is charged.

After logging is enabled, the log delivery user group will be automatically granted the permission to read the bucket ACL and write the bucket where logs are saved. If you manually disable such permissions, bucket logging fails.

OBS can record bucket access requests in logs for request analysis and log audit.

-

Logs occupy some OBS storage space rented by users, causing extra fees. For this reason, OBS does not collect bucket access logs by default.

+

Logs occupy the OBS storage that incurs costs, so OBS does not collect bucket access logs by default.

After logging is configured, you can view operation logs in the bucket that stores the logs in approximately fifteen minutes.

The following shows an example access log of the target bucket:

787f2f92b20943998a4fe2ab75eb09b8 bucket [13/Aug/2015:01:43:42 +0000] xx.xx.xx.xx 
diff --git a/docs/obs/umn/en-us_topic_0045853584.html b/docs/obs/umn/en-us_topic_0045853584.html
index 980bcbd8f..10bc8ec57 100644
--- a/docs/obs/umn/en-us_topic_0045853584.html
+++ b/docs/obs/umn/en-us_topic_0045853584.html
@@ -13,7 +13,7 @@
 
 
 
 
diff --git a/docs/obs/umn/en-us_topic_0045853630.html b/docs/obs/umn/en-us_topic_0045853630.html index 6284fff5e..48e9a52d1 100644 --- a/docs/obs/umn/en-us_topic_0045853630.html +++ b/docs/obs/umn/en-us_topic_0045853630.html @@ -13,7 +13,7 @@

Enable HTTPS

-

If this option is selected, all communication information is encrypted and transferred to OBS over HTTPS.

+

If this option is selected, all communications information will be encrypted and then transferred to OBS over HTTPS.

Enable certificate verification

@@ -28,7 +28,7 @@

Multipart Upload, Part Size (MB)

-

Objects whose size is larger than the specified part size (5 MB by default) are segmented and uploaded at the OBS background. The size of each part can be set in this dialog box. The value of Part Size (MB) can range from 5 MB to 5 GB.

+

OBS uses multipart uploads by default. Objects larger than the specified part size (5 MB by default) will be uploaded using multipart upload in the background. You can adjust the size of each part as needed. The value of Part Size (MB) can range from 5 MB to 5 GB.

NOTE:

Multipart upload is used by default. Recommended settings of Part Size (MB) are as follows:

To maximize client performance, set Part Size (MB) based on the upload speed. You are advised to set the Part Size (MB) value larger than the maximum upload speed. For example, if the maximum upload speed is 10 MB/s, set Part Size (MB) to an integer greater than 10 MB. It is recommended that the part size be set to a value two to three times the maximum upload speed.

@@ -57,7 +57,7 @@

Enable proxy

-

If this option is selected, the Authentication option is displayed. Set the following parameters to access OBS through the proxy server:

+

Selecting this option will display the Authentication option. By configuring the following parameters, you can access OBS through the proxy server:

  • Address: domain name or IP address of the proxy server
  • Port: port of the proxy server (default port is 8080)
diff --git a/docs/obs/umn/en-us_topic_0045853659.html b/docs/obs/umn/en-us_topic_0045853659.html index 132a51c42..06901d200 100644 --- a/docs/obs/umn/en-us_topic_0045853659.html +++ b/docs/obs/umn/en-us_topic_0045853659.html @@ -3,15 +3,17 @@

Lifecycle Management Overview

Lifecycle management means periodically deleting objects in a bucket or transitioning between object storage classes by configuring rules.

Figure 1 Lifecycle management
-
Lifecycle management applies to the following scenarios:
  • Some periodically uploaded files need only to be retained for one week or one month, and can be deleted once they have expired.
  • Documents are seldom accessed after a certain period of time. These files need to be transitioned to Warm or Cold storage or be deleted.
+
You may configure lifecycle rules to:
  • Periodically delete logs that are only meant to be retained for a specific period of time (a week or a month).
  • Transition documents that are seldom accessed to the Warm or Cold storage class or delete them.
-

You can define lifecycle rules for identifying objects and manage lifecycles of the objects based on the rules.

-

You can identify what objects in your bucket will be infrequently accessed, and then configure lifecycle rules to transition them to the Warm or Cold storage class to save storage costs. In short, transition basically means that the object storage class is altered without copying the object. You can also manually change the storage class of an object on the Objects page. For details, see Uploading an Object.

-

Lifecycle rules have two key elements:

-
  • Configuration policy:

    You can also specify the prefix of object names so that objects whose names have this prefix are restricted by the rules. You can configure a lifecycle rule for a bucket so that all objects in the bucket can be restricted by the lifecycle rule.

    -
  • Time: You can specify the number of days after which objects that have been last updated and meet specified conditions are automatically transitioned to Warm or Cold. Or you can specify an expiration time after which objects are automatically deleted.
    • Transition to Warm: You can specify the number of days after which objects that have been last updated and meet specified conditions are automatically transitioned to Warm.
    • Transition to Cold: You can specify the number of days after which objects that have been last updated and meet specified conditions are automatically transitioned to Cold.
    • Expiration time: You can specify the number of days after which objects are automatically deleted or the day after which an object that matches with a rule is deleted.
    +

    You can define lifecycle rules for your scenarios similar to those mentioned above to better manage your objects.

    +

    You can configure lifecycle rules for objects that will no longer be frequently accessed to transition them to the Warm or Cold storage class as needed. This can help reduce costs on storage. In short, transition basically means that the object storage class is altered without copying the object. You can also manually change the storage class of an object on the Objects page. For details, see Uploading an Object.

    +

    Lifecycle rules have the following key elements:

    +
    • Policy

      You can specify an object name prefix to apply a lifecycle rule to a set of objects. You can also apply a lifecycle rule to the entire bucket (including the objects in it).

      +
    • Time

      +

      You can specify the number of days after which objects that have been last updated and meet specified conditions are automatically transitioned to Warm or Cold, or are expired and then deleted.

      +
      • Transition to Warm: This defines the number of days since the last object update after which objects meeting specified conditions are automatically transitioned to the Warm storage class.
      • Transition to Cold: This defines the number of days since the last object update after which objects meeting specified conditions are automatically transitioned to the Cold storage class.
      • Expiration time: This defines the number of days since the last object update after which objects meeting specified conditions are automatically expired and then deleted.
    -

    The previous number of days for objects to be transitioned to Warm is at least 30. If objects are configured to change to both Warm and Cold, the number of days for transition to Cold must be at least 30 days later than that for transition to Warm. For example, if the number of days for transition to Warm is 33, that for transition to Cold must be 63 at least. If only transition to Cold is enabled and transition to Warm is disabled, there is no limit on the number of days for transition. The expiration time must be greater than the two transition times.

    +

    Objects can be transitioned to Warm at least 30 days after their last update. If you configure to transition objects first to Warm and then Cold, the objects must stay Warm at least 30 days before they can be transitioned to Cold. For example, if you configure to transition objects to Warm 33 days after their last update, the objects can be transitioned to Cold at least 63 days after their last update. If only transition to Cold is used, but transition to Warm is not, there is no limit on the number of days for transition. The number set for expiration time must be larger than that specified for any of the transition operations.

Procedure

  1. In the upper right corner of the OBS Console homepage, click Create Bucket. The Create Bucket page is displayed. For details, see Figure 1.

    Figure 1 Creating a bucket

    -

    +

  2. Configure bucket parameters.

    @@ -31,6 +31,7 @@ @@ -59,7 +60,7 @@

  3. Click Create Now.
  4. Related Operations

    After the bucket is created, you can change its storage class by performing the following steps:

    -
    1. In the bucket list on OBS Console, select the target bucket and click Change Storage Class on the right.
    2. Select the desired storage class and click OK.

      • Changing the storage class of a bucket does not change the storage class of existing objects in the bucket.
      • An object inherits the bucket storage class by default, if no other storage class is specified for the object upon its upload. When the bucket storage class is changed, newly uploaded objects inherit the new bucket storage class by default.
      +
      1. In the bucket list on OBS Console, select the target bucket and click Change Storage Class on the right.
      2. Select the desired storage class and click OK.

        • Changing the storage class of a bucket does not change the storage class of existing objects in the bucket.
        • If you do not specify a storage class for an object when uploading it, it inherits the bucket's storage class by default. After the bucket's storage class is changed, newly uploaded objects will inherit the new storage class of the bucket by default.

      diff --git a/docs/obs/umn/en-us_topic_0045853663.html b/docs/obs/umn/en-us_topic_0045853663.html index f3c71b338..5724167ac 100644 --- a/docs/obs/umn/en-us_topic_0045853663.html +++ b/docs/obs/umn/en-us_topic_0045853663.html @@ -4,27 +4,30 @@

      This section describes how to upload local files to OBS over the Internet. These files can be texts, images, videos, or any other type of files.

      Limitations and Constraints

      • OBS Console allows you to upload files in a batch. Up to 100 files can be uploaded at a time, with the total size of no more than 5 GB. If the file size exceeds 5 GB, use OBS Browser or the multipart upload of OBS SDKs and APIs for upload.
      • If versioning is disabled for your bucket and you upload a new file with the same name as the one you previously uploaded to your bucket, the new file automatically overwrites the previous file and does not retain its ACL information. If you upload a new folder using the same name that was used with a previous folder in the bucket, the two folders will be merged, and files in the new folder will overwrite namesake files in the previous folder.
      • After versioning is enabled for your bucket, if the new file you upload has the same name as the one you previously uploaded to the bucket, a new file version will be added in the bucket. For details, see Versioning Overview.
      -

      Prerequisites

      • At least one bucket has been created.
      • If you want to classify files, you can create folders and upload files to different folders. For details about how to create a folder, see Creating a Folder
      +

      Prerequisites

      • At least one bucket has been created.
      • If you want to classify files, you can create folders and upload files to different folders. For details, see Creating a Folder.
      -

      Procedure

      1. In the bucket list, click the bucket you want to operate. The Overview page is displayed.
      2. In the navigation pane, choose Objects.
      3. Go to the folder to which objects are uploaded. Click Upload Object. The Upload Object dialog box is displayed.

        If the files that you want to upload to OBS are stored in Microsoft OneDrive, it is recommended that the names of these files contain a maximum of 32 characters to ensure compatibility.

        +

        Procedure

        1. In the bucket list, click the bucket you want to operate. The Overview page is displayed.
        2. In the navigation pane, choose Objects.
        3. Go to the folder where you want to upload files and click Upload Object. The Upload Object dialog box is displayed.

          If the files that you want to upload to OBS are stored in Microsoft OneDrive, it is recommended that the names of these files contain a maximum of 32 characters to ensure compatibility.

          Figure 1 Uploading objects

          -

        4. Select a storage class. If you do not specify a storage class, the object you upload inherits the default storage class of the bucket.

          An object can have a different storage class from its bucket. You can specify a storage class for an object when uploading it, or you can change the object storage class after the object is uploaded.

          +

        5. Select a storage class. If you do not specify a storage class, the objects you upload inherit the default storage class of the bucket.

          An object can have a different storage class from its bucket. You can specify a storage class for an object when uploading it, or you can change the object storage class after the object is uploaded.

          -

        6. Add a file or folder to be uploaded by dragging it to the Upload Object area.

          You can also click add file in the Upload Object area to select files.

          +

        7. In the Upload Object area, drag and drop the files or folders you want to upload.

          You can also click add file in the Upload Object area to select files.

        8. (Optional) Select KMS encryption to encrypt the uploaded file. For details, see Uploading an Object in Server-Side Encryption Mode.

          If the default encryption has been enabled for the bucket, uploaded objects are automatically encrypted.

        9. Click Upload.
        -

        Related Operations

        When uploading an object, you can specify a storage class for it. After the object is uploaded, you can also change its storage class. The procedure is as follows:

        +

        Related Operations

        When uploading an object, you can specify a storage class for it. After the object is uploaded, you can also change its storage class by doing as follows:

        1. In the bucket list, click the bucket you want to operate. The Overview page is displayed.
        2. In the navigation pane, choose Objects.
        3. Select the target object and choose More > Change Storage Class on the right.

        4. Select the desired storage class and click OK.
        -
        • Objects can be changed from Standard to Warm or Cold storage class, or from Warm to Standard or Cold storage class, but objects in Cold storage class must be restored before being changed to Standard or Warm storage class. Changing from Warm or Cold to other storage classes incurs restore fees. Select an appropriate change option based on your actual needs.
        • When the storage class is changed to Cold, the object restore status changes to Unrestored.
        • You can also configure a lifecycle rule to change the storage class of an object. For details, see Configuring a Lifecycle Rule.
        +
        • You can manually change objects between storage classes:

          +
          • From Standard to Warm, or Cold
          • From Warm to Standard, or Cold
          • From Cold to Standard, or Warm. Before changing Cold objects, you must restore them first.

            Changing objects from Warm or Cold to other storage classes incurs restore costs. Select an appropriate change option based on your actual needs.

            +
          +
        • After an object is changed to Cold, its restore status changes to Unrestored.
        • You can also configure a lifecycle rule to change the storage class of an object. For details, see Configuring a Lifecycle Rule.

        Follow-up Procedure

        You can click Copy Path on the right of an object to copy its path.

        -

        You can share the path with other users. Then they open the bucket where the object is stored and enter the path in the search box to find the object.

        +

        You can share the path with others. Then they can open the bucket where the object is stored and enter the path in the search box above the object list to find the object.

        diff --git a/docs/obs/umn/en-us_topic_0045853707.html b/docs/obs/umn/en-us_topic_0045853707.html index cd8f1df31..146cdf501 100644 --- a/docs/obs/umn/en-us_topic_0045853707.html +++ b/docs/obs/umn/en-us_topic_0045853707.html @@ -1,7 +1,7 @@

        Configuring a Bucket Policy

        -

        A bucket policy defines the access control policy of resources (buckets and objects) in OBS.

        +

        A bucket policy defines access control over resources (buckets and objects) in OBS.

        Procedure

        1. Log in to OBS Browser.
        2. Click the blank area in the row of the bucket for which you want to configure a bucket policy and choose More > Configure Bucket Policy.
        3. In the Configure Bucket Policy dialog box, input required parameters.

          The size of a bucket policy cannot exceed 20 KB.

          Table 1 describes the parameters of bucket policies. All fields except the Effect field are optional.

          @@ -59,8 +59,8 @@
    - @@ -68,7 +68,7 @@ diff --git a/docs/obs/umn/en-us_topic_0045853710.html b/docs/obs/umn/en-us_topic_0045853710.html index 627e37e22..453ce03fb 100644 --- a/docs/obs/umn/en-us_topic_0045853710.html +++ b/docs/obs/umn/en-us_topic_0045853710.html @@ -2,7 +2,7 @@

    Managing Fragments

    Background Information

    Data can be uploaded to OBS using multipart uploads. Fragments are generated, if a multipart upload fails because of the following reasons (included but not limited to):

    -
    • The network is in poor condition, and connection to the OBS server is frequently interrupted.
    • The upload task is manually suspended.
    • The device is faulty.
    • The device is powered off suddenly.
    +
    • The network is in poor condition, and connection to the OBS server is frequently interrupted.
    • The upload task is manually suspended.
    • The device is faulty.
    • The device is powered off suddenly.

    If a file fails to be uploaded or the upload task is suspended, fragments are generated and stored in OBS. You can resume the upload through task management. After the resumable upload completes, the fragments will be cleared automatically.

    You can also use the fragment management function to clear fragments. If you resume an upload task after clearing the fragments, the upload progress will be lost and the task needs to be re-uploaded.

    The fragment storage in OBS is billed.

    diff --git a/docs/obs/umn/en-us_topic_0045853737.html b/docs/obs/umn/en-us_topic_0045853737.html index 3ec141f7a..00b4216d4 100644 --- a/docs/obs/umn/en-us_topic_0045853737.html +++ b/docs/obs/umn/en-us_topic_0045853737.html @@ -3,7 +3,7 @@

    Adding External Buckets

    OBS Browser supports the external bucket adding function.

    Prerequisites

    You have obtained the permissions to read and write the external bucket that you want to add.

    -

    For example: Account A wants to add bucket testbucket of account B. Account B must authorize account A the permission to read bucket testbucket. If account A needs to upload object to bucket testbucket, account B needs to authorize account A the permission to write the bucket. Account A is the owner of the uploaded objects, and needs to authorize account B the permission to read and write the objects.

    +

    For example: Account A wants to add bucket testbucket of account B. Account B must grant account A the permission to read bucket testbucket. If account A needs to upload object to bucket testbucket, account B needs to grant account A the permission to write the bucket. Account A is the owner of the uploaded objects, and needs to grant account B the permission to read and write the objects.

    An external bucket (version 3.0 or later) can be added only when its standard bucket policy is set to Public Read and Write.

    If the standard bucket policy of an external bucket is set to Public Read and Write upon its creation, you need to manually change the standard bucket policy to Private and then change it back to Public Read and Write again, so that it can be added.

    diff --git a/docs/obs/umn/en-us_topic_0045853744.html b/docs/obs/umn/en-us_topic_0045853744.html index 8ba442dd3..9499b0376 100644 --- a/docs/obs/umn/en-us_topic_0045853744.html +++ b/docs/obs/umn/en-us_topic_0045853744.html @@ -1,11 +1,11 @@

    Configuring Logging

    -

    After logging is enabled for a bucket, OBS automatically converts bucket logs into objects following the naming rules and writes the objects into a target bucket.

    -

    Prerequisites

    The log delivery user group has been assigned the Write and ACL View permissions for the target bucket. For details, see Configuring a Bucket ACL.

    +

    After logging is enabled for a bucket, OBS automatically converts the bucket's logs into objects in a fixed naming format and then writes these objects into a destination bucket.

    +

    Prerequisites

    The log delivery user group has the write and ACL view permissions for the destination bucket. For details, see Configuring a Bucket ACL.

    -

    Procedure

    1. Log in to OBS Browser.
    2. Click the blank area in the row of the bucket for which you want to configure logging and choose More > Configure Logging.
    3. Select Enable. See Figure 1.

      Figure 1 Logging
      -

    4. Select an existing bucket where you want to store log files. Log delivery users of the selected bucket will be automatically assigned with the permission to read the bucket ACL and write logs to the bucket.
    5. Enter a prefix for the Log File Name Prefix.

      After logging is enabled, generated logs are named in the following format:

      +

      Procedure

      1. Log in to OBS Browser.
      2. Click the blank area in the row of the bucket for which you want to configure logging and choose More > Configure Logging.
      3. Select Enable. See Figure 1.

        Figure 1 Configuring logging
        +

      4. Select an existing bucket where you want to store log files. Log delivery users of the selected bucket will be automatically granted the permissions to read the bucket ACL and write logs to the bucket.
      5. Enter a prefix for the Log File Name Prefix.

        After logging is enabled, generated logs are named in the following format:

        <Log File Name Prefix>YYYY-mm-DD-HH-MM-SS-<UniqueString>

        • <Log File Name Prefix> is the shared prefix of log file names.
        • YYYY-mm-DD-HH-MM-SS indicates when the log is generated.
        • <UniqueString> indicates a character string generated by OBS.

        On OBS Console, if the configured <Log File Name Prefix> ends with a slash (/), logs generated in the bucket are stored in the <Log File Name Prefix> folder in the bucket, facilitating the management of log files.

        diff --git a/docs/obs/umn/en-us_topic_0045853745.html b/docs/obs/umn/en-us_topic_0045853745.html index cf8b94305..341ed925c 100644 --- a/docs/obs/umn/en-us_topic_0045853745.html +++ b/docs/obs/umn/en-us_topic_0045853745.html @@ -2,12 +2,12 @@

        Bucket Policies and Object Policies

        Bucket Owner and Object Owner

        The owner of a bucket is the account that created the bucket. If the bucket is created by an IAM user under the account, the bucket owner is the account instead of the IAM user.

        -

        The owner of an object is the account that uploads the object, who may not be the owner of the bucket to which the object belongs. For example, account B is granted the permission to access a bucket of account A, and account B uploads a file to the bucket. In that case, instead of the bucket owner account A, account B is the owner of the object.

        +

        The owner of an object is the account that uploads the object, who may not be the owner of the bucket to which the object belongs. For example, account B is granted the permission to access a bucket of account A, and account B uploads a file to the bucket. In that case, instead of the bucket owner account A, account B is the owner of the object.

        -

        Bucket Policy

        A bucket policy is attached to a bucket and objects in the bucket. By leveraging bucket policies, the owner of a bucket can grant IAM users or other accounts the permissions to operate the bucket and objects in the bucket.

        -

        Bucket Policy Application Scenarios:

        +

        Bucket Policies

        A bucket policy is attached to a bucket and objects in the bucket. By leveraging bucket policies, the owner of a bucket can grant IAM users or other accounts the permissions to operate the bucket and objects in the bucket.

        +

        Application Scenarios

        • If no IAM policies are used for access control and you want to grant other accounts the permissions to access your OBS resources, you can use bucket policies.
        • You can configure bucket policies to grant IAM users different access permissions on buckets.
        • You can also use bucket policies to grant other accounts the permissions to access your buckets.
        -

        Standard Bucket Policies:

        +

        Standard Bucket Policies

        There are three options for standard bucket policies.

        • Private: No access beyond the bucket ACL settings is granted.
        • Public Read: Anyone can read objects in the bucket.
        • Public Read and Write: Anyone can read, write, or delete objects in the bucket.

        After a bucket is created, the default bucket policy is Private. Only the bucket owner has the full control permissions over the bucket. To ensure data security, it is recommended that you do not use the Public Read or Public Read and Write policies.

        @@ -73,13 +73,14 @@

        For buckets whose version is 3.0, the default permissions of Public Read and Public Read and Write are updated to solve the problem where external buckets fail to be added to OBS Browser due to insufficient permissions.

        • Added the ListBucket permission to the Public Read policy.
        • Added the ListBucket permission to the Public Read and Write policy.
        • If you want to add an external bucket to OBS Browser, manually update the configuration of standard bucket policies.
        -

        Custom Bucket Policy:

        +

        Custom Bucket Policies

        The following three modes are provided to facilitate quick configuration:

        • Read-only: With the Read-only mode, you only need to specify the Principal (authorized users). Then the authorized users have the read permission for the bucket and objects in the bucket, and can perform all GET operations on these resources.
        • Read and write: With the Read and write mode, you only need to specify the Principal (authorized users). Then the authorized users have the full control permissions for the bucket and objects in the bucket, and can perform any operation on these resources.
        • Customized: With the Customized mode, you can define the specific operation permissions that you want to grant to users and accounts by configuring the Effect, Principal, Resources, Actions, and Conditions parameters.

        On OBS Console, when you use a custom bucket policy to grant other users the permissions to operate resources in a bucket, you also need to grant these users the bucket read permission ListBucket (leaving the resource name blank indicates that the policy takes effect on the entire bucket). Otherwise, the users may have no permission to access the bucket from OBS Console.

        -

        Object Policy

        Object policies apply to objects in a bucket. A bucket policy is applicable to a set of objects (with the same object name prefix) or to all objects (specified by an asterisk *) in the bucket. To configure an object policy, select an object, and then configure a policy for it.

        +

        Object Policies

        Object policies apply to objects in a bucket. A bucket policy is applicable to a set of objects (with the same object name prefix) or to all objects (specified by an asterisk *) in the bucket. To configure an object policy, select an object, and then configure a policy for it.

        +

        diff --git a/docs/obs/umn/en-us_topic_0045853755.html b/docs/obs/umn/en-us_topic_0045853755.html index a3bf516b9..4caed73ff 100644 --- a/docs/obs/umn/en-us_topic_0045853755.html +++ b/docs/obs/umn/en-us_topic_0045853755.html @@ -1,25 +1,25 @@

        Configuring Static Website Hosting

        -

        This section describes how to configure static website hosting for buckets and use bucket domain names to access static websites.

        -

        The static website hosting takes effect within two minutes after its configuration is complete.

        -

        Prerequisites

        Web page files of the static website have been uploaded to a bucket.

        +

        You can configure static website hosting for a bucket and then use the bucket's domain name to access static websites hosted in the bucket.

        +

        The configuration of static website hosting takes two minutes at most to take effect.

        +

        Prerequisites

        Web page files required for static website hosting have been uploaded to the specified bucket.

        The static website files hosted in the bucket are accessible to anonymous users.

        -

        If the web page files are in the Cold storage class, restore them first. For more information, see Restoring Objects from the Cold Storage.

        +

        Static web page files in the Cold storage class have been restored. For more information, see Restoring Objects from the Cold Storage.

        -

        Procedure

        1. In the bucket list, click the bucket you want to operate. The Overview page is displayed.
        2. (Optional) If the static website files in the bucket are not accessible to anonymous users, perform this step. If the static website files are already accessible to anonymous users, skip this step.

          Grant the read permission for static website files to anonymous users. For details, see Granting Object Access Permissions to Anonymous Users.

          +

          Procedure

          1. In the bucket list, click the bucket you want to operate. The Overview page is displayed.
          2. (Optional) If the static website files in the bucket are not accessible to anonymous users, perform this step. If they are already accessible to everyone, skip this step.

            Grant the read permission for static website files to anonymous users. For details, see Granting Anonymous Users Permission to Access Objects.

            If the bucket contains only static website files, configure the Public Read policy for the bucket so that all files in it can be accessed publicly.

            1. Choose Permissions > Bucket Policies.
            2. In the Standard Bucket Policies area, select the Public Read policy for the bucket.
            3. Click Public Read. For details, see Figure 1. In the confirmation dialog box that is displayed, click Yes.
              Figure 1 Configuring the public read permission
            -

          3. In the right Basic Configurations area, click Static Website Hosting. The Static Website Hosting page is displayed.

            Alternatively, you can choose Basic Configurations > Static Website Hosting from the navigation pane on the left.

            -

          4. Click Configure Static Website Hosting. The Configure Static Website Hosting dialog box is displayed.
          5. Enable it by turning on the status switch.
          6. Set the hosting type to the current bucket. For details, see Figure 2.

            Figure 2 Configuring static website hosting
            +

          7. In the Basic Configurations area, click Static Website Hosting. The Static Website Hosting page is displayed.

            Alternatively, you can choose Basic Configurations > Static Website Hosting from the navigation pane on the left.

            +

          8. Click Configure Static Website Hosting. The Configure Static Website Hosting dialog box is displayed.
          9. Enable Status.
          10. Set the hosting type to the current bucket. For details, see Figure 2.

            Figure 2 Configuring static website hosting

            -

          11. Set the values of the homepage and 404 error page.

            -

            • Home Page: specifies the default homepage of the static website. When OBS Console is used to configure static website hosting, only HTML web pages are supported. When are used to configure static website hosting, OBS does not have such a restriction but the Content-Type of objects must be specified.

              OBS only allows files such as index.html in the root directory of a bucket to function as the default homepage. Do not set the default homepage with a multi-level directory structure (for example, /page/index.html).

              -
            • 404 Error Page: specifies the error page returned when an error occurs during static website access. When OBS Console is used to configure static website hosting, only HTML, JPG, PNG, BMP, and WEBP files under the root directory are supported. When APIs are used to configure static website hosting, OBS does not have such a restriction but the Content-Type of objects must be specified.
            -

          12. Optional: In Redirection Rules, configure redirection rules. Requests that comply with the redirection rules are redirected to the specific host or page.

            A redirection rule is compiled in the JSON or XML format. Each rule contains a Condition and a Redirect. The parameters are described as follows:

            +

          13. Configure the homepage and 404 error page.

            +

            • Home Page: specifies the default homepage of the static website. When OBS Console is used to configure static website hosting, only HTML web pages are supported. When APIs are used to configure static website hosting, OBS does not have such a restriction, but the object Content-Type must be specified.

              OBS only allows files such as index.html in the root directory of a bucket to function as the default homepage. Do not set the default homepage with a multi-level directory structure (for example, /page/index.html).

              +
            • 404 Error Page: specifies the error page returned when an error occurs during static website access. When OBS Console is used to configure static website hosting, only HTML, JPG, PNG, BMP, and WebP files under the root directory are supported. When APIs are used to configure static website hosting, OBS does not have such a restriction, but the object Content-Type must be specified.
            +

          14. Optional: In Redirection Rules, configure redirection rules. Requests that comply with the redirection rules are redirected to the specific host or page.

            A redirection rule is compiled in the JSON or XML format. Each rule contains a Condition and a Redirect. The parameters are described in Table 1.

            -
    Table 1 Bucket parameters

    Parameter

    Storage Class

    Storage classes of a bucket. Different storage classes meet different requirements for storage performance and costs.

    +
    • The Standard storage class is for storing a large number of hot files or small files that are frequently accessed (multiple times per month on average) and require quick retrieval.
    • The Warm storage class is for storing data that is less frequently accessed (less than 12 times per year on average) and requires quick retrieval.
    • The Cold storage class is for archiving data that is rarely accessed (once a year on average) and has no requirements for quick retrieval.

    For details, see Storage Classes Overview.

    Action/NotAction

    OBS operations on which the bucket policy statement takes effect

    -

    Either Action or NotAction must be selected to specify whether the bucket policy statement takes effect on the OBS operation.

    +

    OBS actions which the bucket policy is applied to.

    +

    Either Action or NotAction must be selected to specify whether the bucket policy applies to the OBS action.

    Mandatory

    Resource/NotResource

    Objects on which the bucket policy statement takes effect

    -

    Either Resource or NotResource must be selected to specify whether the bucket policy statement takes effect on the OBS resources.

    +

    Either Resource or NotResource must be selected to specify whether the bucket policy applies to the OBS resources.

    Mandatory

    @@ -59,7 +59,7 @@
    Table 1 Parameter description

    Container

    +
    @@ -45,7 +45,7 @@ - - - - - - - - + + + + + diff --git a/docs/obs/umn/en-us_topic_0066036542.html b/docs/obs/umn/en-us_topic_0066036542.html index 1bcbd73fa..edd1723e4 100644 --- a/docs/obs/umn/en-us_topic_0066036542.html +++ b/docs/obs/umn/en-us_topic_0066036542.html @@ -4,7 +4,7 @@

    This section describes how to use CORS in HTML5 to implement cross-origin access.

    Prerequisites

    Static website hosting has been configured. For details, see Configuring Static Website Hosting.

    -

    Procedure

    1. In the bucket list, click the bucket you want to operate. The Overview page is displayed.
    2. On the right of the Overview page, click CORS Rules in the Basic Configurations area. The CORS Rules page is displayed.

      Alternatively, you can choose Basic Configurations > CORS Rules in the navigation pane.

      +

      Procedure

      1. In the bucket list, click the bucket you want to operate. The Overview page is displayed.
      2. In the Basic Configurations area, click CORS Rules. The CORS Rules page is displayed.

        Alternatively, you can choose Basic Configurations > CORS Rules in the navigation pane.

      3. Click Create. The Create CORS Rule dialog box is displayed. See Figure 1 for details.

        A bucket can have a maximum of 100 CORS rules configured.

        Figure 1 Creating a CORS rule
        @@ -19,8 +19,8 @@
    @@ -28,22 +28,22 @@ https://*.vbs.example.com @@ -57,7 +57,7 @@ https://*.vbs.example.com
    Table 1 Parameter description

    Container

    Key

    Protocol

    Protocol used for redirection The value can be http or https. If this parameter is not specified, the default value http is used.

    +

    Protocol used for redirecting requests. The value can be http or https. If this parameter is not specified, the default value http is used.

    HostName

    @@ -55,12 +55,14 @@

    ReplaceKeyPrefixWith

    Object name prefix on which the redirection rule takes effect

    +

    The object name prefix used in the redirection request. OBS replaces the value of KeyPrefixEquals with the value you specified here for ReplaceKeyPrefixWith.

    +

    For example, to redirect requests for docs (objects in the docs directory) to documents (objects in the documents directory), set KeyPrefixEquals to docs under Condition and ReplaceKeyPrefixWith to documents under Redirect. This way, requests for object docs/a.html will be redirected to documents/a.html.

    ReplaceKeyWith

    Object name on which the redirection rule takes effect

    +

    The object name used in the redirection request. OBS replaces the entire object name in the request with the value you specified here for ReplaceKeyWith.

    +

    For example, to redirect requests for all objects in the docs directory to documents/error.html, set KeyPrefixEquals to docs under Condition and ReplaceKeyWith to documents/error.html under Redirect. This way, requests for both objects docs/a.html and docs/b.html will be redirected to documents/error.html.

    HttpRedirectCode

    diff --git a/docs/obs/umn/en-us_topic_0045853756.html b/docs/obs/umn/en-us_topic_0045853756.html index e44fd3a2e..2bb871c7a 100644 --- a/docs/obs/umn/en-us_topic_0045853756.html +++ b/docs/obs/umn/en-us_topic_0045853756.html @@ -9,15 +9,17 @@

    Background Information

    Object Deletion with Versioning Enabled

    When versioning is enabled for a bucket, OBS works slightly different when deleting different objects.

    • Deleting a file or folder: The file or folder is not permanently deleted, but is retained in the Deleted Objects list and marked with the Delete Marker. In Deleted Objects, click the object name. On the Versions tab, you can see that the latest object version has the delete marker.
      • To permanently delete the file or folder, delete it again from the Deleted Objects list. For details, see Procedure.
      • To recover the deleted file, undelete it from the Deleted Objects list. For details, see Undeleting an Object.
      -
    • Deleting an object version: The version will be permanently deleted. If the deleted version is the latest one, the next latest version becomes the latest version.
    +
  5. Deleting an object version: The version will be permanently deleted and cannot be recovered. If the deleted version is the latest one, the next latest version becomes the latest version.
  6. -

    Procedure

    1. In the bucket list, click the bucket you want to operate. The Overview page is displayed.
    2. In the navigation pane, choose Objects.
    3. Select the file or folder you want to delete, and choose More > Delete on the right.

      You can select multiple files or folders and click Delete above the object list to batch delete them.

      -

    4. Click Yes to confirm the deletion.
    5. If versioning is enabled for the bucket, delete the deleted files or folders again from the Deleted Objects list to permanently delete them.

      1. Click Deleted Objects.
      2. In the Operation column of the file or folder to be deleted, click Permanently Delete.

        You can also select multiple files or folders and click Permanently Delete above the object list to batch delete them.

        +

        Procedure

        1. In the bucket list, click the bucket you want to operate. The Overview page is displayed.
        2. In the navigation pane, choose Objects.
        3. Select the file or folder you want to delete and choose More > Delete on the right.

          You can select multiple files or folders and click Delete above the object list to batch delete them.

          +

        4. Click Yes to confirm the deletion.

          If you delete an object from a bucket with versioning enabled, the object is not permanently deleted but retained in the Deleted Objects list. All versions of the object are still kept in the bucket and are billed for storage. If you need to permanently delete the object, see the following steps.

          +
          +

        5. If versioning is enabled for the bucket, delete the files or folders again from the Deleted Objects list to permanently delete them.

          1. Click Deleted Objects.
          2. In the Operation column of the file or folder to be deleted, click Permanently Delete.

            You can also select multiple files or folders and click Permanently Delete above the object list to batch delete them.

        -

        Related Operations

        When versioning is enabled, files in the Deleted Objects list also have multiple versions. Note the following points when deleting different versions of files:
        • Deleting a version with the Delete Marker actually recovers this version instead of permanently deleting it. For details, see Undeleting an Object.
        • Deleting a version without the Delete Marker permanently deletes this version. This version will not be recovered even if the object is recovered later.
        -
        +

        Related Operations

        When versioning is enabled, files in the Deleted Objects list also have multiple versions. Note the following points when deleting different versions of files:

        +
        • Deleting a version with the Delete Marker actually recovers this version instead of permanently deleting it. For details, see Undeleting an Object.
        • Deleting a version without the Delete Marker permanently deletes this version. This version will not be recovered even if the object is recovered later.
        diff --git a/docs/obs/umn/en-us_topic_0045853764.html b/docs/obs/umn/en-us_topic_0045853764.html index 0153f1a9d..59f86657e 100644 --- a/docs/obs/umn/en-us_topic_0045853764.html +++ b/docs/obs/umn/en-us_topic_0045853764.html @@ -3,18 +3,18 @@

        Managing Accounts

        Account names on OBS Browser are used to distinguish one from another, which are irrelevant to the registered cloud service account. An OBS Browser account has one pair of AK and SK, but a pair of AK and SK can be used by multiple OBS Browser accounts. A maximum of 10 accounts can be added to OBS Browser.

        OBS Browser uses the AK and SK for identity authentication. AKs and SKs are the access keys created by on the management console (on My Credential page) by cloud service accounts and IAM users. For details, see Creating Access Keys (AK and SK).

        -
        1. AKs and SKs are required for logging in to OBS Browser to access OBS resources.
        2. Once an AK and SK are entered, IAM receives the AK and SK, finds the cloud service account or IAM user that own the pair of AK and SK, and checks which OBS permissions the account or IAM user has.
        3. Then IAM authorizes the user who tries to log in to OBS Browser the OBS permissions accordingly.
        4. The user can access OBS resources through OBS Browser.
        -

        Add an Account

        1. Log in to OBS Browser.
        2. In the upper right corner of OBS Browser, click the account name, and select Manage Account.
        3. In the Manage Account dialog box that is displayed, click Add Account.
        4. In the Add Account dialog box, enter the account information.

          The account information includes the following parameters:

          -
          • Account name: The account name is used only to uniquely identify an account and can be different from the OBS account registered with the cloud services. The account name cannot exceed 50 characters.
          • Service: OBS Browser can connect to OBS or Other object storage services.
            • When accessing OBS, select OBS. For details, see Figure 1.
              Figure 1 Add a new account - OBS
              -
            • When connecting to other object storage services, select Other object storage services. For details, see Figure 2.
              Specify Server Address. You can enter the IP address or domain name in the following format: server IP address or domain name:server port (the protocol port of HTTPS is 443 and that of HTTP is 80). The HTTPS server is used by default. If you want to use the HTTP server, click in the upper right corner and click System Configuration. In the System Configuration dialog box that is displayed, deselect Enable HTTPS.
              Figure 2 Adding a new account - Other object storage services
              +
              1. AKs and SKs are required for logging in to OBS Browser to access OBS resources.
              2. Once an AK and SK are entered, IAM receives the AK and SK, finds the cloud service account or IAM user that owns the pair of AK and SK, and checks which OBS permissions the account or IAM user has.
              3. Then IAM grants the user who tries to log in to OBS Browser the OBS permissions accordingly.
              4. The user can access OBS resources through OBS Browser.
              +

              Adding an Account

              1. Log in to OBS Browser.
              2. In the upper right corner of OBS Browser, click the account name, and select Manage Account.
              3. In the Manage Account dialog box that is displayed, click Add Account.
              4. In the Add Account dialog box, enter the account information.

                The following parameters need to be configured:

                +
                • Account name: The account name is used only to uniquely identify an account and can be different from the OBS account registered with the cloud services. The account name cannot exceed 50 characters.
                • Service: OBS Browser can connect to OBS or Other object storage services.
                  • When connecting OBS Browser to OBS, select OBS. For details, see Figure 1.
                    Figure 1 Adding a new account - OBS
                    +
                  • When connecting OBS Browser to any other object storage service, select Other object storage services. For details, see Figure 2.
                    Specify Server Address. You can enter the IP address or domain name in the following format: server IP address or domain name:server port (the protocol port of HTTPS is 443 and that of HTTP is 80). The HTTPS server is used by default. If you want to use the HTTP server, click in the upper right corner and click System Configuration. In the System Configuration dialog box that is displayed, deselect Enable HTTPS.
                    Figure 2 Adding a new account - Other object storage services
                -
                • AK and SK: Enter the AK and SK created on the My Credential page after you register with a cloud service. For details about how to obtain AKs and SKs, see Creating Access Keys (AK and SK).
                • Remember my secret access key is selected by default. If you do not select Remember my secret access key, you must input the secret access key each time you log in to OBS Browser.
                +
                • AK and SK: Enter the AK and SK created on the My Credential page after you register with a cloud service. For details about how to obtain AKs and SKs, see Creating Access Keys (AK and SK).
                • Remember my secret access key is selected by default. If you do not select Remember my secret access key, you must input the secret access key each time you log in to OBS Browser.

              5. Click OK.

                After saving the account information, you can click the account name in the upper corner of the page and the newly added account is displayed in the account name drop-down list. You can click the desired account to switch to that account from the current login account.

              -

              Edit an Account

              1. Log in to OBS Browser.
              2. In the upper right corner of OBS Browser, click the account name, and select Manage Account.
              3. Click Edit in the row where the desired account resides.
              4. Modify account information as required.
              5. Click OK to save the modification.
              +

              Editing an Account

              1. Log in to OBS Browser.
              2. In the upper right corner of OBS Browser, click the account name, and select Manage Account.
              3. Click Edit in the row where the desired account resides.
              4. Modify account information as required.
              5. Click OK to save the modification.

              Deleting an Account

              1. Log in to OBS Browser.
              2. In the upper right corner of OBS Browser, click the account name, and select Manage Account.
              3. Click Delete in the row where the desired account resides.
              4. Click OK and the account is deleted.
              diff --git a/docs/obs/umn/en-us_topic_0045853821.html b/docs/obs/umn/en-us_topic_0045853821.html index 81639f351..494bee7da 100644 --- a/docs/obs/umn/en-us_topic_0045853821.html +++ b/docs/obs/umn/en-us_topic_0045853821.html @@ -4,16 +4,16 @@

              Prerequisites

              You are the object owner or you have the permission to write the object ACL.

              An object owner is the account that uploads the object, but may not be the owner of the bucket that stores the object. For example, account B is granted the permission to access a bucket of account A, and account B uploads a file to the bucket. In that case, account B, instead of the bucket owner account A, is the owner of the object. By default, account A is not allowed to access this object and cannot read or modify the object ACL.

              -

              Procedure

              1. In the bucket list, click the bucket you want to operate. The Overview page is displayed.
              2. In the navigation pane, choose Objects.
              3. Click the object to be operated.
              4. On the Object ACL tab, click Edit to set ACL permissions of the Owner, Registered User, and Anonymous User for the target object.

                If the object is encrypted, the ACL permission cannot be configured for registered users and anonymous users.

                +

                Procedure

                1. In the bucket list, click the bucket you want to operate. The Overview page is displayed.
                2. In the navigation pane, choose Objects.
                3. Click the object to be operated.
                4. On the Object ACL tab page, click Edit to grant the owner, registered user, and anonymous user ACL permissions for the object.

                  ACL permissions for encrypted objects cannot be granted to registered users or anonymous users.

                  -

                5. Click Add to apply specific ACL permissions to an account, as shown in Figure 1.

                  Enter an account ID or account name and set ACL permissions for the account. You can obtain the account ID or account name from the My Credentials page. The account ID and account name correspond to the Domain ID and Domain Name respectively on the My Credentials page.

                  +

                6. Click Add to apply specific ACL permissions to an account, as shown in Figure 1.

                  Enter an account ID or account name and specify ACL permissions for the account. You can obtain the account ID or account name from the My Credentials page. The account ID and account name correspond to the Domain ID and Domain Name respectively on the My Credentials page.

                  Figure 1 Adding ACL permissions for an object

                7. Click Save.
                diff --git a/docs/obs/umn/en-us_topic_0045853854.html b/docs/obs/umn/en-us_topic_0045853854.html index 732092779..e33bc05bb 100644 --- a/docs/obs/umn/en-us_topic_0045853854.html +++ b/docs/obs/umn/en-us_topic_0045853854.html @@ -4,22 +4,22 @@

                You can configure a lifecycle management rule for a bucket, and applicable objects in the bucket will be managed by the rule.

                Procedure

                1. Log in to OBS Browser.
                2. Click the blank area in the row of the bucket for which you want to configure a lifecycle rule and choose More > Configure Lifecycle Rule.
                3. In the Configure Lifecycle Rule dialog box, click Create. The dialog box in Figure 1 is displayed.

                  Figure 1 Creating a lifecycle rule on OBS Browser

                4. Configure a lifecycle rule.

                  Basic Information:
                  • Status:

                    Select Enable to enable the lifecycle rule.

                    -
                  • Rule Name:

                    Identify lifecycle rules. The Rule Name contains a maximum of 255 characters.

                    -
                  • Applies To: Can be set to Object name prefix or Bucket.
                    • Object name prefix: Objects that have the specified prefix will be managed by the lifecycle rule. The prefix cannot start with a slash (/), cannot have consecutive slashes (/), and cannot contain the following special characters: \:*?"<>|
                    • Bucket: All objects in the bucket will be managed by the lifecycle rule.
                    +
                  • Rule Name:

                    It identifies a lifecycle rule. A rule name can contain a maximum of 255 characters.

                    +
                  • Applies To: Can be set to Object name prefix or Bucket.
                    • Object name prefix: Objects with this specified prefix will be managed by the lifecycle rule. The prefix cannot start with a slash (/) or contain two consecutive slashes (//), and cannot contain the following special characters: \:*?"<>|
                    • Bucket: All objects in the bucket will be managed by the lifecycle rule.
                  -
                  • When Object name prefix is selected and the specified prefix and the prefix of an existing lifecycle rule overlap, OBS regards the two rules as one and disables the one to be configured. For example, if a rule with prefix abc exists in the system, another rule whose prefix starts with abc cannot be configured.
                  • If a lifecycle rule whose Applies To is set to Object name prefix has been configured, you cannot configure a lifecycle rule whose Applies To is set to Bucket.
                  • If a lifecycle rule has been configured for the entire bucket, no more rules that apply to object name prefix can be added.
                  +
                  • If the specified prefix is overlapping with the prefix set in an existing lifecycle rule, OBS regards these two rules as one and forbids you to configure the one you are configuring. For example, if there is already a rule with prefix abc in OBS, you cannot configure another rule whose prefix starts with abc.
                  • If there is already a lifecycle rule based on an object prefix, you are not allowed to configure another rule that is applied to the entire bucket.
                  • If a lifecycle rule has been configured for the entire bucket, no more rules that apply to object name prefix can be added.

                  Current Version or Historical Version:

                  -
                  • Current Version and Historical Version are two concepts for Versioning. If Versioning is enabled, uploading objects with the same name to the same path generates different versions. The object uploaded lastly is called Current Version, and the object uploaded previously is called Historical Version.
                  • You can configure either the Current Version or Historical Version, or both of them.
                  +
                  • Current Version and Historical Version are two concepts for versioning. If versioning is enabled for a bucket, uploading objects with the same name to the bucket creates different object versions. The last uploaded object is called the current version, while those previously uploaded are called historical versions.
                  • You can configure either the Current Version or Historical Version, or both of them.
                  -
                  • Transition to Warm: You can specify the number of days after which objects that have been last updated and meet specified conditions are automatically transitioned to Warm. This number must be at least 30.
                  • Transition to Cold: You can specify the number of days after which objects that have been last updated and meet specified conditions are automatically transitioned to Cold. If you configure to transition objects first to Warm and then Cold, the objects must stay Warm at least 30 days before they can be transitioned to Cold. If only transition to Cold is used, but transition to Warm is not, there is no limit on the number of days for transition.
                  • Object deletion upon expiration: You can specify the number of days after which objects that have been last updated and meet the specified conditions are automatically deleted. The expiration time must be greater than the two transition times.
                  +
                  • Transition to Warm: After this number of days since the last update, objects meeting specified conditions will be transitioned to Warm. This number must be at least 30.
                  • Transition to Cold: After this number of days since the last update, objects meeting specified conditions will be transitioned to Cold. If you configure to transition objects first to Warm and then Cold, the objects must stay Warm at least 30 days before they can be transitioned to Cold. If only transition to Cold is used, but transition to Warm is not, there is no limit on the number of days for transition.
                  • Delete Objects After (Days): After this number of days since the last update, objects meeting certain conditions will be expired and then deleted. This number must be larger than that specified for any of the transition operations.
                  For example, on January 7, 2015, you saved the following files in OBS:
                  • log/test1.log
                  • log/test2.log
                  • doc/example.doc
                  • doc/good.txt
                  -
                  On January 10, 2015, you saved the following files:
                  • log/clientlog.log
                  • log/serverlog.log
                  • doc/work.doc
                  • doc/travel.txt
                  +
                  On January 10, 2015, you saved another four files:
                  • log/clientlog.log
                  • log/serverlog.log
                  • doc/work.doc
                  • doc/travel.txt
                  -

                  On January 10, 2015, you set the expiration time of objects prefixed with log to one day later, you may encounter the following situations:

                  -
                  • Objects log/test1.log and log/test2.log uploaded on January 7, 2015 may be deleted after the last system scan. The deletion may happen on January 10, 2015 or January 11, 2015, depending on the time of the last system scan.
                  • Objects log/clientlog.log and log/serverlog.log uploaded on January 10, 2015 are usually deleted on January 11, 2015 or January 12, 2015, depending on the time of the last system scan. If the objects have been stored for more than one day at the time of the last system scan, the objects are deleted upon the scan. Or, they are deleted at the next system scan or later whenever their storage duration meets the specified expiration time requirement.
                  +

                  On January 10, 2015, you set the objects prefixed with log to expire one day later. You might encounter the following situations:

                  +
                  • Objects log/test1.log and log/test2.log uploaded on January 7, 2015 might be deleted after the last system scan. The deletion could happen on January 10, 2015 or January 11, 2015, depending on the time of the last system scan.
                  • Objects log/clientlog.log and log/serverlog.log uploaded on January 10, 2015 might be deleted on January 11, 2015 or January 12, 2015, depending on whether they have been stored for over one day (since their last update) when the system scan happened.

                  On the day of operation, you can set the objects with the name prefix log to be transitioned to Warm 30 days later, transitioned to Cold 60 days later, and deleted 100 days later, then OBS will transition log/clientlog.log, log/serverlog.log, log/test1.log, and log/test2.log to Warm when their storage duration exceeds 30 days, transition them to Cold when their storage duration exceeds 60 days, and delete them when their storage duration exceeds 100 days, respectively.

                  In theory, it takes 24 hours at most to execute a lifecycle rule. Because OBS calculates the lifecycle of an object from the next 00:00 (UTC time) after the object is uploaded, there may be a delay in transitioning objects between storage classes and deleting expired objects. Generally, the delay does not exceed 48 hours. If you make changes to an existing lifecycle rule, the rule will take effect again.

                  diff --git a/docs/obs/umn/en-us_topic_0045853860.html b/docs/obs/umn/en-us_topic_0045853860.html index c5adf170f..e568b0b01 100644 --- a/docs/obs/umn/en-us_topic_0045853860.html +++ b/docs/obs/umn/en-us_topic_0045853860.html @@ -7,7 +7,7 @@

                5. In the Add CORS Rule dialog box that is displayed, enter CORS rules.

                  Figure 1 Adding a CORS rule

                  Table 1 describes parameters in CORS rules.

                  -
                  Table 1 Parameters in CORS rules

                  Parameter

                  +
                  @@ -46,7 +46,9 @@ https://*.vbs.example.com
                  Table 1 Parameters in a CORS rule

                  Parameter

                  Description

                  -

                6. Click OK.
                7. Click OK to save the rules.

                  After CORS is successfully configured, only the addresses specified in Allowed Origin can access a bucket in OBS using the method specified in Allowed Method. For example, you configure CORS parameters for bucket testbucket as follows: Allowed Origin: www.example.com; Allowed Method: GET; Allowed Header: left blank; Exposed Header: left blank; Cache Duration (s): 100. Then OBS only allows GET requests from www.example.com to access bucket testbucket, without restrictions on request headers. The client can cache the CORS response for 100 seconds.

                  +

                8. Click OK.
                9. Click OK to save the rules.

                  After CORS is successfully configured, only the addresses specified for Allowed Origin can access the bucket using the methods specified for Allowed Method. For example, you configure a CORS rule for bucket testbucket as follows:

                  +
                  • Allowed Origin: www.example.com
                  • Allowed Method: GET
                  • Allowed Header: left blank
                  • Exposed Header: left blank
                  • Cache Duration (s): 100
                  +

                  Then, OBS only allows GET requests from www.example.com to access bucket testbucket and does not limit request headers. The client can cache CORS responses for 100 seconds.

                10. In the displayed dialog box, click Close to close the dialog box.
                11. diff --git a/docs/obs/umn/en-us_topic_0049066876.html b/docs/obs/umn/en-us_topic_0049066876.html index bddebb7c3..41f7b3305 100644 --- a/docs/obs/umn/en-us_topic_0049066876.html +++ b/docs/obs/umn/en-us_topic_0049066876.html @@ -1,7 +1,7 @@

                  Object Metadata Overview

                  -

                  Object metadata is a set of name-value pairs that are part of object management.

                  +

                  Object metadata is a set of name-value pairs that describe the object and is used for object management.

                  Currently, only the metadata defined by the system is supported.

                  The metadata defined by the system is classified into the following types: system-controlled and user-controlled. For example, metadata such as Last-Modified is controlled by the system and cannot be modified. You can call the API to modify the metadata such as ContentLanguage. The metadata that can be modified is described as follows:

                  @@ -56,7 +56,7 @@
                  -
                  • When versioning is enabled for a bucket, you can set metadata for objects which are Latest Version, but cannot set metadata for objects which are Historical Version.
                  • You cannot set object metadata for a Cold object.
                  +
                  • When versioning is enabled for a bucket, you can set metadata for objects which are Latest Version, but cannot set metadata for objects which are Historical Version.
                  • Metadata cannot be configured for Cold objects.
                  diff --git a/docs/obs/umn/en-us_topic_0050937852.html b/docs/obs/umn/en-us_topic_0050937852.html index 23d77fef8..110dc2d6c 100644 --- a/docs/obs/umn/en-us_topic_0050937852.html +++ b/docs/obs/umn/en-us_topic_0050937852.html @@ -3,7 +3,7 @@

                  Storage Classes Overview

                  OBS supports tiered storage classes at the bucket level and object level.

                  OBS provides the following storage classes: Standard, Warm, and Cold.

                  -
                  Different storage classes meet different requirements for storage performance and costs.
                  • The Standard storage class features low access latency and high throughput. It is therefore suitable for storing a massive number of hot files (frequently accessed every month) or small files (less than 1 MB). The application scenarios include big data analytics, mobile apps, hot videos, and social apps.
                  • The Warm storage class is ideal for storing data that is semi-frequently accessed (less than 12 times a year), with requirements for quick response. The application scenarios include file synchronization, file sharing, and enterprise backup.
                  • The Cold storage class is suitable for archiving data that is rarely-accessed (averagely once a year). The application scenarios include data archiving and long-term data backups. The Cold storage class is secure, durable, and inexpensive, and can be used to replace tape libraries. To keep cost low, it may take hours to restore data from the Cold storage class.
                  +
                  These storage classes can meet different needs for storage performance and costs.
                  • Standard: The Standard storage class features low latency and high throughput. It is therefore good for storing frequently (multiple times per month) accessed files or small files (less than 1 MB). Its application scenarios include big data analytics, mobile apps, hot videos, and social apps.
                  • Warm: The Warm storage class is for storing data that is infrequently (less than 12 times per year) accessed, but when needed, the access has to be fast. It can be used for file synchronization, file sharing, enterprise backups, and many other scenarios.
                  • Cold: The Cold storage class is ideal for storing data that is rarely (once per year) accessed. Its application scenarios include data archive and long-term backups. The Cold storage class is secure, durable, and inexpensive, and can be used to replace tape libraries. To keep cost low, it may take hours to restore data from the Cold storage class.

                  Bucket Storage Classes vs. Object Storage Classes

                  When an object is uploaded, it inherits the storage class of the bucket by default, but you can change the default storage class when you upload the object.

                  Changing the storage class of a bucket does not change the storage classes of existing objects in the bucket, but newly uploaded objects will inherit the new storage class.

                  @@ -21,11 +21,11 @@

    Feature

    Top-notch performance, highly reliable and available

    +

    Top-notch performance, high reliability and availability

    Reliable, inexpensive, and real-time storage access

    +

    Reliable, inexpensive storage with real-time access

    Long-term storage for archived data at a very low cost

    +

    Long-term storage for Cold data at a low cost

    Application scenarios

    @@ -37,9 +37,22 @@

    Archive, medical image storage, video material storage, and replacement of tape libraries

    Minimum storage duration

    +

    Minimum measurement unita

    +
    NOTE:

    a: Minimum measurement unit refers to a minimum billable object size. For example, a 32 KB Standard object will be billed as if it were 64 KB.

    +

    Not required

    +

    64 KB

    +

    64 KB

    +

    64 KB

    +

    Minimum storage durationb

    +
    NOTE:

    b: Minimum storage duration refers to a minimum billable storage duration. For example, an Infrequent Access object deleted when it was stored for 20 days will be billed for a full 30 days.

    +
    +

    N/A

    30 days

    Allowed Origin

    Mandatory

    -

    Requests from this origin can access the bucket.

    -

    Multiple matching rules are allowed. One rule occupies one line, and allows one wildcard character (*) at most. Example:

    +

    Specifies the origins from which requests can access the bucket.

    +

    Multiple matching rules are allowed. One rule occupies one line, and allows one wildcard character (*) at most. An example is given as follows:

    http://rds.example.com
     https://*.vbs.example.com

    Allowed Method

    Mandatory

    -

    Specifies the acceptable operation type of buckets and objects.

    +

    Specifies the allowed request methods for buckets and objects.

    The methods include Get, Post, Put, Delete, and Head.

    Allowed Header

    Optional

    -

    Specifies the allowed header of cross-origin requests.

    -

    Only CORS requests matching the allowed header are valid.

    +

    Specifies the allowed headers in cross-origin requests.

    +

    Only CORS requests matching the allowed headers are valid.

    You can enter multiple allowed headers (one per line) and each line can contain one wildcard character (*) at most. Spaces and special characters including &:< are not allowed.

    Exposed Header

    Optional

    -

    Specifies the exposed header in CORS responses, providing additional information for clients.

    +

    Specifies the exposed headers in CORS responses, providing additional information for clients.

    By default, a browser can access only headers Content-Length and Content-Type. If the browser wants to access other headers, you need to configure those headers in this parameter.

    You can enter multiple exposed headers (one per line). Spaces and special characters including *&:< are not allowed.

    -

  7. Click OK.

    Message "The CORS rule created successfully." is displayed. The configuration of CORS takes effect within two minutes.

    +

  8. Click OK.

    Message "The CORS rule created successfully." is displayed. The CORS configuration takes effect within two minutes.

    After CORS is successfully configured, only the addresses specified in Allowed Origin can access a bucket in OBS using the methods specified in Allowed Method. For example, you can configure CORS parameters for bucket testbucket as follows:

    • Allowed Origin: https://www.example.com
    • Allowed Method: GET
    • Allowed Header: *
    • Exposed Header: *
    • Cache Duration (s): 100

    By doing so, OBS only allows GET requests from https://www.example.com to access bucket testbucket, without restrictions on request headers. The client can cache CORS responses for 100 seconds.

    diff --git a/docs/obs/umn/en-us_topic_0066088957.html b/docs/obs/umn/en-us_topic_0066088957.html index 773dd20e1..fa2634db3 100644 --- a/docs/obs/umn/en-us_topic_0066088957.html +++ b/docs/obs/umn/en-us_topic_0066088957.html @@ -2,13 +2,13 @@

    Configuring Redirection

    You can redirect all requests for a bucket to another bucket or URL by configuring redirection rules.

    -

    Prerequisites

    Web page files of the static website have been uploaded to a bucket.

    +

    Prerequisites

    Web page files required for static website hosting have been uploaded to the specified bucket.

    The static website files hosted in the bucket are accessible to anonymous users.

    -

    If the web page files are in the Cold storage class, restore them first. For more information, see Restoring Objects from the Cold Storage.

    +

    Static web page files in the Cold storage class have been restored. For more information, see Restoring Objects from the Cold Storage.

    -

    Procedure

    1. In the bucket list, click the bucket you want to operate. The Overview page is displayed.
    2. In the right Basic Configurations area, click Static Website Hosting. The Static Website Hosting page is displayed.

      Alternatively, you can choose Basic Configurations > Static Website Hosting from the navigation pane on the left.

      -

    3. Click Configure Static Website Hosting. The Configure Static Website Hosting dialog box is displayed.
    4. Enable it by turning on the status switch.
    5. Set Hosting By to Redirection. See Figure 1 for details. Enter a bucket access domain name or URL in the text box of Redirect To.

      Figure 1 Configuring redirection
      -

    6. Click OK.
    7. In the bucket list, click the bucket to which requests for the static website are redirected.
    8. (Optional) If the static website files in the bucket are not accessible to anonymous users, perform this step. If the static website files are already accessible to anonymous users, skip this step.

      Grant the read permission for static website files to anonymous users. For details, see Granting Object Access Permissions to Anonymous Users.

      +

      Procedure

      1. In the bucket list, click the bucket you want to operate. The Overview page is displayed.
      2. In the Basic Configurations area, click Static Website Hosting. The Static Website Hosting page is displayed.

        Alternatively, you can choose Basic Configurations > Static Website Hosting from the navigation pane on the left.

        +

      3. Click Configure Static Website Hosting. The Configure Static Website Hosting dialog box is displayed.
      4. Enable Status.
      5. Set Hosting By to Redirection, as shown in Figure 1. In the text box of Redirect To, enter the bucket's access domain name or URL.

        Figure 1 Configuring redirection
        +

      6. Click OK.
      7. In the bucket list, click the bucket to which requests for the static website are redirected.
      8. (Optional) If the static website files in the bucket are not accessible to anonymous users, perform this step. If they are already accessible to everyone, skip this step.

        Grant the read permission for static website files to anonymous users. For details, see Granting Anonymous Users Permission to Access Objects.

        If the bucket contains only static website files, configure the Public Read policy for the bucket so that all files in it can be accessed publicly.

        1. Choose Permissions > Bucket Policies.
        2. In the Standard Bucket Policies area, select the Public Read policy for the bucket.
        3. Click Public Read. For details, see Figure 2. In the confirmation dialog box that is displayed, click Yes.
          Figure 2 Configuring the public read permission
        diff --git a/docs/obs/umn/en-us_topic_0066088963.html b/docs/obs/umn/en-us_topic_0066088963.html index cfc2dc2bd..16b66045b 100644 --- a/docs/obs/umn/en-us_topic_0066088963.html +++ b/docs/obs/umn/en-us_topic_0066088963.html @@ -4,7 +4,7 @@

        This topic describes how to configure an SMN-enabled event notification rule on OBS Console.

        Background Information

        For details, see SMN-Enabled Event Notifications.

        -

        Procedure

        1. In the bucket list, click the bucket you want to operate. The Overview page is displayed.
        2. In the right Basic Configurations area, click Event Notification. The Event Notification page is displayed.

          Alternatively, you can choose Basic Configurations > Event Notification in the navigation pane.

          +

          Procedure

          1. In the bucket list, click the bucket you want to operate. The Overview page is displayed.
          2. In the Basic Configurations area, click Event Notification. The Event Notification page is displayed.

            Alternatively, you can choose Basic Configurations > Event Notification in the navigation pane.

          3. Click Create. The Create Event Notification dialog box is displayed. See Figure 1 for details.

            Figure 1 Creating an event notification rule

          4. Configure event notification parameters, as described in Table 1.

            @@ -63,25 +63,25 @@ - - - - @@ -102,20 +102,20 @@ - - - @@ -173,8 +173,8 @@

            Bucket ACL Application Scenarios

            ACLs control the read and write permissions for accounts and groups. ACL permission granularity is not as fine as bucket policies and IAM policies. Generally, it is recommended that you use IAM policies and bucket policies for access control.

            -

            It is recommended that you use bucket ACLs in the following scenarios:

            -
            • Grant the log delivery user with the write access to the target bucket, so that access logs can be delivered to the target bucket.
            • Grant an account with the read and write access to a bucket, so that data in the bucket can be shared or the bucket can be mounted.
            +

            You can configure bucket ACLs to:

            +
            • Grant the log delivery user write access to the target bucket that stores access logs.
            • Grant an account read and write access to a bucket, so that data in the bucket can be shared or the bucket can be mounted.

            Object ACL Application Scenarios

            ACLs control the read and write permissions for accounts and groups. ACL permission granularity is not as fine as bucket policies and IAM policies. Generally, it is recommended that you use IAM policies and bucket policies for access control.

            It is recommended that you use object ACLs in the following scenarios:

            diff --git a/docs/obs/umn/en-us_topic_0066176932.html b/docs/obs/umn/en-us_topic_0066176932.html index 97b288388..15506295c 100644 --- a/docs/obs/umn/en-us_topic_0066176932.html +++ b/docs/obs/umn/en-us_topic_0066176932.html @@ -6,11 +6,11 @@

            Background Information

            Object Deletion with Versioning Enabled

            When versioning is enabled for a bucket, OBS works slightly different when deleting different objects.

            • Deleting a file or folder: The file or folder is not permanently deleted, but is retained in the Deleted Objects list and marked with the Delete Marker.
              • To permanently delete the file or folder, delete it again from the Deleted Objects list. For details, see Deleting an Object or Folder.
              • To recover the deleted file, undelete it from the Deleted Objects list. For details, see Procedure.
              -
            • Deleting an object version: The version will be permanently deleted. If the deleted version is the latest one, the next latest version becomes the latest version.
            +
          5. Deleting an object version: The version will be permanently deleted and cannot be recovered. If the deleted version is the latest one, the next latest version becomes the latest version.
          6. Object Recovery with Versioning Enabled

            When a bucket has the versioning function enabled, deleting a file from the Objects list does not permanently delete it. The deleted file will be retained with the Delete Marker in the Deleted Objects list. You can recover the deleted file using the Undelete operation.

            Note the following points when you undelete objects:

            -
            1. Only deleted files but not folders can be undeleted.

              After you undelete a deleted file, the file is recovered and will appear in the Objects list. Then you can perform basic operations on the file as you normally do on other objects. If the file was stored in a folder before the deletion, it will be recovered to its original path after you undelete it.

              +
              1. Only files can be undeleted but not folders.

                After you undelete a deleted file, the file is recovered and will appear in the Objects list. Then you can perform basic operations on the file as you normally do on other objects. If the file was stored in a folder before the deletion, it will be recovered to its original path after you undelete it.

              2. Deleted files in the Deleted Objects also keep multiple versions. When deleting different versions of files, note the following points:
                • If you delete a version with the Delete Marker, it actually recovers this version instead of permanently deleting it. For details, see Related Operations.
                • If you delete a version without the Delete Marker, that version is permanently deleted. This version will not be recovered, even if the object is recovered later.
              3. A deleted object must have at least one version without the Delete Marker in the Deleted Objects list. Otherwise, the object cannot be undeleted.
            @@ -20,7 +20,7 @@

            Related Operations

            Recover a file by deleting its version with the Delete Marker:

            -
            1. In the bucket list, click the bucket you want to operate. The Overview page is displayed.
            2. In the navigation pane, choose Objects.
            3. Click Deleted Objects.
            4. Click the deleted file that you want to recover. The file information is displayed.
            5. On the Versions tab, view all versions of the file.

              • If you delete a version with the Delete Marker, the file is recovered and retained in the Objects list.
              • If you delete a version without the Delete Marker, that version is permanently deleted.
              +
              1. In the bucket list, click the bucket you want to operate. The Overview page is displayed.
              2. In the navigation pane, choose Objects.
              3. Click Deleted Objects.
              4. Click the deleted file that you want to recover. The file information is displayed.
              5. On the Versions tab, view all versions of the file.

                • If you delete a version with the Delete Marker, the file will be recovered and retained in the Objects list.
                • If you delete a version without the Delete Marker, that version will be permanently deleted.

            diff --git a/docs/obs/umn/obs_03_0002.html b/docs/obs/umn/obs_03_0002.html index a47ac8a8d..4a03af424 100644 --- a/docs/obs/umn/obs_03_0002.html +++ b/docs/obs/umn/obs_03_0002.html @@ -11,7 +11,7 @@

            Application Scenarios

            • The same OBS resources need to be accessed in different locations. To minimize the access latency, you can use cross-region replication to create object copies in the nearest region.
            • Due to business reasons, you need to migrate OBS data to the data center in another region.
            • To ensure data security and availability, you need to create explicit backups for all data written to OBS in the data center of another region. Therefore, secure backup data is available if the source data is damaged irrevocably.

            Limitations and Constraints

            Cross-region replication has the following limitations and constraints:

            -
            • Currently, only buckets of version 3.0 support cross-region replication. To check the bucket version, go to the Overview page of the bucket on OBS Console. Then you can view the bucket version in the Basic Information area.
            • Objects cannot be copied to the destination bucket if they are uploaded before cross-region replication is enabled.
            • The source bucket and the destination bucket must belong to different regions separately. Data cannot be copied between buckets in the same region.
            • Objects of the Cold storage class in the source bucket cannot be copied to the destination bucket through the cross-region replication function.
            • If the region where the destination bucket resides does not support the storage classes, object copies will be stored in the standard storage class.
            • The versioning status of the source bucket must be the same as that of the destination bucket.
            • Objects in a source bucket can be copied to only one destination bucket, and cannot be copied again from the destination bucket to another bucket. For example, bucket A and bucket B are in two different regions. You can copy data from bucket A to bucket B or the other way round. However, data copies in either bucket A or bucket B cannot be replicated anymore.
            • Object deletion actions made on the source bucket are usually not synchronized to the destination bucket when synchronous deletion of objects is disabled. The object deletion synchronization will happen only when both the source and destination buckets have versioning enabled and you delete an object from the source bucket without specifying a version.

              When synchronous deletion of objects is enabled, object deletion actions made on the source bucket will be synchronized to the destination bucket. Deleting an object from the source bucket also deletes the object from the destination bucket.

              +
              • Currently, only buckets of version 3.0 support cross-region replication. To check the bucket version, go to the Overview page of the bucket on OBS Console. Then you can view the bucket version in the Basic Information area.
              • The source bucket and the destination bucket must belong to different regions separately. Data cannot be copied between buckets in the same region.
              • Objects of the Cold storage class in the source bucket cannot be copied to the destination bucket through the cross-region replication function.
              • If the region where the destination bucket resides does not support the storage classes, object copies will be stored in the standard storage class.
              • The versioning status of the source bucket must be the same as that of the destination bucket.
              • Objects in a source bucket can be copied to only one destination bucket, and cannot be copied again from the destination bucket to another bucket. For example, bucket A and bucket B are in two different regions. You can copy data from bucket A to bucket B or the other way round. However, data copies in either bucket A or bucket B cannot be replicated anymore.
              • Object deletion actions made on the source bucket are usually not synchronized to the destination bucket when synchronous deletion of objects is disabled. The object deletion synchronization will happen only when both the source and destination buckets have versioning enabled and you delete an object from the source bucket without specifying a version.

                When synchronous deletion of objects is enabled, object deletion actions made on the source bucket will be synchronized to the destination bucket. Deleting an object from the source bucket also deletes the object from the destination bucket.

              • If you change the versioning status of the destination bucket when cross-region replication is enabled, the replication of objects will fail. If you want to change the versioning status of the source bucket, disable the cross-region replication first, and then make the change.
              • Ensure that owners of the source and destination buckets have the read and write permissions to the two buckets. Otherwise, data cannot be synchronized. If the system does not have the permissions to read the source bucket or write the destination bucket due to read/write permission errors, objects cannot be copied successfully, and such replication will not be resumed even if the permission error is rectified.
              • For a source bucket, you can create only one cross-region replication rule that applies to the whole bucket for replication of all objects in the bucket. However, you can create a maximum of 100 cross-region replication rules based on object prefixes for the replication of objects that match the prefixes.
              • OBS currently only supports the replication between one source bucket and one destination bucket. Replication from one source bucket to multiple destination buckets is not supported. The destination bucket can be modified. However, modifying the destination bucket will change the destination bucket of all existing rules.
              • If you delete the OBS agency when the cross-region replication is enabled, the replication will be in the FAILED status.
              • Do not delete, overwrite object replicas in the destination bucket, or modify their ACLs, which may cause inconsistency of latest object versions or permission control settings between the destination bucket and the source bucket.
              • After a replication with Synchronize Existing Objects enabled is complete, if the replication policy keeps unchanged, any ACL changes of source objects will be synchronized to object copies. However, ACL changes of source historical objects will not be synchronized to the copies of historical objects.
            diff --git a/docs/obs/umn/obs_03_0003.html b/docs/obs/umn/obs_03_0003.html index a4b7faa52..f81706a8c 100644 --- a/docs/obs/umn/obs_03_0003.html +++ b/docs/obs/umn/obs_03_0003.html @@ -1,7 +1,7 @@

            Configuring Cross-Region Replication

            -

            Currently, OBS allows you to configure a cross-region replication rule for copying all objects from a source bucket to a destination bucket or multiple cross-region replication rules that match prefixes.

            +

            To replicate objects from a source bucket to a destination bucket in a different region, you can configure a single cross-region replication rule that is applied to all objects in the bucket, or you can configure multiple rules that are applied to a set of objects by specifying a prefix.

            A cross-region replication rule may not take effect immediately upon its configuration. Accordingly, the objects that this rule is applied to may not be replicated immediately after the rule is configured.

            Prerequisites

            The source bucket version is 3.0 or later, and cross-region replication is available in the region of the source bucket.

            @@ -15,20 +15,20 @@
            - - - - diff --git a/docs/obs/umn/obs_03_0009.html b/docs/obs/umn/obs_03_0009.html index 34b858506..9466460c0 100644 --- a/docs/obs/umn/obs_03_0009.html +++ b/docs/obs/umn/obs_03_0009.html @@ -1,11 +1,11 @@

            Monitoring OBS

            -

            Scenarios

            You may send PUT and GET requests continuously when using OBS, which generates upload and download traffic. You may also receive error responses from the server. Cloud Eye can perform automatic and real-time monitoring over your buckets. It triggers alarms and notifications upon operations to help you understand your bucket access requests, traffic, and error responses in a timely manner.

            +

            Scenarios

            In the use of OBS, you may send PUT and GET requests that generate upload and download traffic, or receive error responses from the server. To learn the requests, traffic, and error responses in a timely manner, you can use Cloud Eye to perform automatic and real-time monitoring over your buckets.

            You do not need to separately subscribe to Cloud Eye. It starts automatically once you create a resource (a bucket, for example) in OBS. For more information about Cloud Eye, see Cloud Eye User Guide.

            Figure 1 Cloud Eye monitoring
            -

            Setting Alarm Rules

            In addition to the automatic and real-time monitoring, you can configure alarm rules in Cloud Eye to send alarm notifications when specified situation occurs.

            +

            Setting Alarm Rules

            In addition to automatic and real-time monitoring, you can configure alarm rules in Cloud Eye to receive alarm notifications when specified events happen.

            For details, see Creating Alarm Rules in Cloud Eye User Guide.

            Viewing OBS Monitoring Metrics

            Cloud Eye monitors OBS monitoring metrics in real time. You can view detailed monitoring statistics of each metric on the console of Cloud Eye.

            diff --git a/docs/obs/umn/obs_03_0010.html b/docs/obs/umn/obs_03_0010.html index 9ef085c5e..8c7d86f0f 100644 --- a/docs/obs/umn/obs_03_0010.html +++ b/docs/obs/umn/obs_03_0010.html @@ -81,7 +81,7 @@
            diff --git a/docs/obs/umn/obs_03_0012.html b/docs/obs/umn/obs_03_0012.html index e3f9a935b..ccb87cafe 100644 --- a/docs/obs/umn/obs_03_0012.html +++ b/docs/obs/umn/obs_03_0012.html @@ -3,7 +3,7 @@

            Storage Classes Overview

            OBS supports tiered storage classes at the bucket level and object level.

            OBS provides the following storage classes: Standard, Warm, and Cold.

            -
            Different storage classes meet different requirements for storage performance and costs.
            • The Standard storage class features low access latency and high throughput. It is therefore suitable for storing a massive number of hot files (frequently accessed every month) or small files (less than 1 MB). The application scenarios include big data analytics, mobile apps, hot videos, and social apps.
            • The Warm storage class is ideal for storing data that is semi-frequently accessed (less than 12 times a year), with requirements for quick response. The application scenarios include file synchronization, file sharing, and enterprise backup.
            • The Cold storage class is suitable for archiving data that is rarely-accessed (averagely once a year). The application scenarios include data archiving and long-term data backups. The Cold storage class is secure, durable, and inexpensive, and can be used to replace tape libraries. To keep cost low, it may take hours to restore data from the Cold storage class.
            +
            These storage classes can meet different needs for storage performance and costs.
            • Standard: The Standard storage class features low latency and high throughput. It is therefore good for storing frequently (multiple times per month) accessed files or small files (less than 1 MB). Its application scenarios include big data analytics, mobile apps, hot videos, and social apps.
            • Warm: The Warm storage class is for storing data that is infrequently (less than 12 times per year) accessed, but when needed, the access has to be fast. It can be used for file synchronization, file sharing, enterprise backups, and many other scenarios.
            • Cold: The Cold storage class is ideal for storing data that is rarely (once per year) accessed. Its application scenarios include data archive and long-term backups. The Cold storage class is secure, durable, and inexpensive, and can be used to replace tape libraries. To keep cost low, it may take hours to restore data from the Cold storage class.

            Bucket Storage Classes vs. Object Storage Classes

            When an object is uploaded, it inherits the storage class of the bucket by default, but you can change the default storage class when you upload the object.

            Changing the storage class of a bucket does not change the storage classes of existing objects in the bucket, but newly uploaded objects will inherit the new storage class.

            @@ -21,11 +21,11 @@
            - - - - - + + + + + diff --git a/docs/obs/umn/obs_03_0016.html b/docs/obs/umn/obs_03_0016.html index fc6d47782..d042ece95 100644 --- a/docs/obs/umn/obs_03_0016.html +++ b/docs/obs/umn/obs_03_0016.html @@ -13,7 +13,7 @@ diff --git a/docs/obs/umn/obs_03_0020.html b/docs/obs/umn/obs_03_0020.html index 8246e192e..e10cb1dbb 100644 --- a/docs/obs/umn/obs_03_0020.html +++ b/docs/obs/umn/obs_03_0020.html @@ -27,7 +27,7 @@ - @@ -88,15 +88,6 @@ - - - - -
            Table 1 Event notification parameters

            Parameter

            diff --git a/docs/obs/umn/en-us_topic_0066088967.html b/docs/obs/umn/en-us_topic_0066088967.html index 2d3282b84..bf21f389d 100644 --- a/docs/obs/umn/en-us_topic_0066088967.html +++ b/docs/obs/umn/en-us_topic_0066088967.html @@ -15,13 +15,13 @@

            Specific User

            You can grant accounts access permissions to a bucket or an object using ACLs. Once a specific account is granted the access permissions, all IAM users who have OBS resource permissions under this account can have the same access permissions to operate the bucket or object.

            -

            If you need to grant different access permissions to different IAM users, configure bucket policies. For details, see Granting an IAM User with the Operation Permissions for a Specified Bucket.

            +

            If you need to grant different access permissions to different IAM users, configure bucket policies. For details, see Granting an IAM User Permissions to Operate a Specific Bucket.

            Owner

            The owner of a bucket is the account that created the bucket. The bucket owner has all bucket access permissions by default. The read and write permissions for the bucket ACL are permanently available to the bucket owner, and cannot be modified.

            -

            The owner of an object is the account that uploaded the object, who may not be the owner of the bucket to which the object belongs. The object owner has the read access to the object, as well as the read and write access to the object ACL, and such access permissions cannot be modified.

            +

            The owner of an object is the account that uploads the object, who may not be the owner of the bucket to which the object belongs. The object owner has the read access to the object, as well as the read and write access to the object ACL, and such access permissions cannot be modified.

            NOTICE:

            Do not modify the bucket owner's read and write access permissions for the bucket.

            READ

            Allows a grantee to obtain the list of objects in and the metadata of a bucket.

            +

            Used to obtain the list of objects in a bucket and the bucket metadata.

            WRITE

            Allows a grantee to upload, overwrite, and delete any object in a bucket.

            +

            Used to upload, overwrite, and delete any object in a bucket.

            Access to ACL

            READ_ACP

            Allows a grantee to obtain the ACL of a bucket.

            +

            Used to obtain the ACL of a bucket.

            The bucket owner has this permission permanently by default.

            WRITE_ACP

            Allows a grantee to update the ACL of a bucket.

            +

            Used to update the ACL of a bucket.

            The bucket owner has this permission permanently by default.

            READ

            Allows a grantee to obtain the content and metadata of an object.

            +

            Used to obtain the content and metadata of an object.

            Access to ACL

            READ_ACP

            Allows a grantee to obtain the ACL of an object.

            +

            Used to obtain the ACL of an object.

            The object owner has this permission permanently by default.

            WRITE_ACP

            Allows a grantee to update the ACL of an object.

            +

            Used to update the ACL of an object.

            The object owner has this permission permanently by default.

            Status

            Indicates whether to enable or disable the replication rule. The versioning status of the source bucket must be the same as that of the destination bucket.

            +

            Indicates whether the rule is enabled or disabled after being created. The versioning status of the source and destination buckets must keep the same.

            Source bucket

            Replicate

            Indicates objects on which the rule takes effect.

            -
            • All objects: The rule applies to all objects in the bucket.
            • Match by prefix: The rule applies only to objects with the preset prefix.
            +

            Indicates the objects the rule will apply to.

            +
            • All objects: The rule applies to all objects in the bucket.
            • Match by prefix: The rule applies only to objects with the specified prefix.

            Prefix

            • If you want to apply the rule to objects by prefix, you must set a value no longer than 1024 characters for Prefix.
            • When Match by prefix is selected and the specified prefix overlaps with the prefix of an existing rule, OBS regards the two rules as one and the new one cannot be configured successfully. For example, if a rule with prefix abc exists in the system, another rule whose prefix starts with abc cannot be configured.
            • To copy a folder, end the prefix with a slash (/), for example, imgs/.
            +
            • To apply the rule to objects with the specified prefix, you must set Prefix to a value no longer than 1,024 characters.
            • If the specified prefix overlaps with the prefix of an existing rule, OBS regards these two rules as one and the new rule cannot be configured. For example, if there is already a rule with prefix abc in OBS, you cannot configure another rule whose prefix starts with abc.
            • To copy a folder, end the prefix with a slash (/), for example, imgs/.

            Synchronize Existing Objects

            @@ -44,9 +44,9 @@

            Replicate KMS encrypted objects

            OBS will try to copy KMS encrypted objects no matter whether this option is selected or not.

            -
            • If this option is selected, only the IAM agencies that have the KMS Administrator permissions at both the source and destination ends are displayed in the drop-down list of IAM Agency in this dialog box.
            • If this option is not selected, only the IAM agencies that do not have the KMS Administrator permission at either the source or destination end are displayed in the drop-down list of IAM Agency in this dialog box.
            -

            If KMS is not available in the destination region or the agency does not have the KMS Administrator permissions in the source and destination regions, KMS encrypted objects in the source bucket will fail to be replicated to the destination bucket, and the object replication status will be FAILED.

            -

            After a KMS-encrypted object in the source bucket is replicated to the destination bucket, the key for encrypting the object copy changes to the default key obs/default of the region where the destination bucket is located.

            +
            • If this option is selected, only the IAM agencies that have the KMS Administrator permission at both the source and destination ends are displayed in the drop-down list of IAM Agency in the Create Cross-Region Replication Rule dialog box.
            • If this option is not selected, only the IAM agencies that do not have the KMS Administrator permission at either the source or destination end are displayed in the drop-down list of IAM Agency in the Create Cross-Region Replication Rule dialog box.
            +

            If KMS is not available in the destination region or the agency does not have the KMS Administrator permission in the source and destination regions, KMS encrypted objects will fail to be replicated to the destination bucket, and the object replication status will be failed.

            +

            After a KMS-encrypted object is replicated to the destination bucket, the key for encrypting the object copy changes to the default key obs/default of the destination region.

            Destination bucket

            @@ -63,7 +63,7 @@

            Change storage class for replicated objects

            By default, this option is not selected, indicating that the storage class of object copies is the same as that of objects in the source bucket. If you need to change the storage class of objects copies, select this parameter, then you can specify a storage class.

            +

            By default, this option is not selected, indicating that the storage class of object copies is the same as that of the source objects. If you need to change the storage class of objects copies, select this parameter, then you can specify a storage class.

            Permissions

            @@ -73,7 +73,7 @@

            Delegates OBS to operate your resources, so that OBS can use this agency to implement cross-region replication.

            If there is no IAM agency available, click Create IAM agencies to create one. If you have already created IAM agencies, select one from the drop-down list.

            NOTE:

            Requirements:

            -

            The IAM agency must be of OBS. The OBS project must have the OBS FullAccess permissions. If Replicate KMS encrypted objects is selected, you also need the KMS Administrator permissions in the regions where the source and destination buckets are located.

            +

            The IAM agency must be of OBS. The OBS project must have the OBS FullAccess permissions. If Replicate KMS encrypted objects is selected, you also need the KMS Administrator permission in the regions where the source and destination buckets are located.

            First Byte Download Delay

            Specifies the average time from receiving a GET, HEAD, or OPTIONS request to the time that the system starts to respond in a measurement period.

            -

            Unit: millisecond

            +

            Unit: ms

            ≥ 0 ms

            Feature

            Top-notch performance, highly reliable and available

            +

            Top-notch performance, high reliability and availability

            Reliable, inexpensive, and real-time storage access

            +

            Reliable, inexpensive storage with real-time access

            Long-term storage for archived data at a very low cost

            +

            Long-term storage for Cold data at a low cost

            Application scenarios

            @@ -37,9 +37,22 @@

            Archive, medical image storage, video material storage, and replacement of tape libraries

            Minimum storage duration

            +

            Minimum measurement unita

            +
            NOTE:

            a: Minimum measurement unit refers to a minimum billable object size. For example, a 32 KB Standard object will be billed as if it were 64 KB.

            +

            Not required

            +

            64 KB

            +

            64 KB

            +

            64 KB

            +

            Minimum storage durationb

            +
            NOTE:

            b: Minimum storage duration refers to a minimum billable storage duration. For example, an Infrequent Access object deleted when it was stored for 20 days will be billed for a full 30 days.

            +
            +

            N/A

            30 days

            Management

            Deleting the CORS configuration a Bucket

            +

            Deleting the CORS configuration of a bucket

            bucket

            deleteBucketWebsite

            Management

            -

            Deleting bucket data

            -

            bucket

            -

            deleteBucketdata

            -

            Management

            Creating a bucket

            diff --git a/docs/obs/umn/obs_03_0024.html b/docs/obs/umn/obs_03_0024.html index f17b83d40..38b29b938 100644 --- a/docs/obs/umn/obs_03_0024.html +++ b/docs/obs/umn/obs_03_0024.html @@ -6,7 +6,7 @@

            Procedure

            1. Log in to OBS Browser.
            2. Click the bucket to which the file or folder will be uploaded.
            3. Click Upload. The Upload Object dialog box is displayed. For details, see Figure 1.

              You can select either files or folders to upload. For details, see 4 and 5.

              Figure 1 Uploading objects
              -

            4. Click Select File. The local file browser dialog box is displayed. Select the file that you want to upload and click Open.

              You can upload a maximum of 500 files or folders at a time.

              +

            5. Click Select File. The local file browser dialog box is displayed. Select the file that you want to upload and click Open.

              You can upload a maximum of 500 files or folders at a time.

              If the files that you want to upload to OBS are stored in Microsoft OneDrive, it is recommended that the names of these files contain a maximum of 32 characters to ensure compatibility.

            6. Click Select Folder, select a folder, and click OK.
            7. Select a storage class. If no storage class is selected, the object inherits the bucket storage class by default.
            8. Click OK to upload the file or folder.
            diff --git a/docs/obs/umn/obs_03_0032.html b/docs/obs/umn/obs_03_0032.html index a7044a090..1af7fa5f3 100644 --- a/docs/obs/umn/obs_03_0032.html +++ b/docs/obs/umn/obs_03_0032.html @@ -1,7 +1,7 @@

            Configuring a User-Defined Domain Name

            -

            Procedure

            1. In the bucket list, click the bucket you want to operate. The Overview page is displayed.
            2. In the navigation pane, choose Domain Name Mgmt.
            3. Click Bind User Domain Name. In the displayed dialog box, enter the domain name to configure, as shown in Figure 1.

              The suffix of a user-defined domain name can contain 2 to 6 uppercase or lowercase letters.

              +

              Procedure

              1. In the bucket list, click the bucket you want to operate. The Overview page is displayed.
              2. In the navigation pane, choose Domain Name Mgmt.
              3. Click Bind User Domain Name. In the displayed dialog box, enter the domain name to configure, as shown in Figure 1.

                The suffix of a user-defined domain name can contain 2 to 6 uppercase or lowercase letters.

                Figure 1 Binding a user domain name

              4. Click OK.
              5. Configure a CNAME record on the DNS, and map the user-defined domain name (for example, example.com) to the domain name of the bucket.

                The CNAME configuration varies depending on DNS providers. For details, contact your DNS provider.

              diff --git a/docs/obs/umn/obs_03_0035.html b/docs/obs/umn/obs_03_0035.html index f8dffce7f..2e34ba375 100644 --- a/docs/obs/umn/obs_03_0035.html +++ b/docs/obs/umn/obs_03_0035.html @@ -2,7 +2,7 @@

              Configuring User Permissions

              If your cloud service account does not need individual IAM users, then you may skip this section. Your permissions to use OBS functions are not affected.

              -

              If IAM users are required, you need to grant them access permissions on OBS, because OBS is separately deployed from other cloud resources.

              +

              If IAM users are required, you need to grant them access permissions for OBS, because OBS is separately deployed from other cloud resources.

              Process

              Figure 1 Process of granting an IAM user the OBS permissions

              Procedure

              1. Log in to the management console with your account.
              2. On the top menu bar, choose Service List > Management & Deployment > Identity and Access Management. The IAM console is displayed.
              3. Create a user group and assign OBS permissions to it.

                A user group is a collection of users. By assigning permissions to a user group, you assign permissions to the users in this group. After you create an IAM user, add it to one or more user groups, so that it can inherit the permissions from the groups.
                1. In the navigation pane, choose User Groups. The User Groups page is displayed.
                2. Click Create User Group.
                3. Enter a user group name and click OK.

                  The user group is displayed in the user group list once the creation is complete.

                  @@ -11,39 +11,7 @@
            -

          7. Create a user.

            1. In the navigation pane, choose Users. The Users page is displayed.
            2. Click Create User.
            3. Set user information and click Next. -
              - - - - - - - - - - - - - - - - -
              Table 1 User parameters

              Parameter

              -

              Description

              -

              Username

              -

              The user name for logging in to the cloud service.

              -

              Credential Type

              -
              A credential refers to the identity credential used for user system authentication. In this example, password is selected.
              • Password: Used for accessing cloud services using the console or development tools.
              • Access key: Used for logging to the cloud service using development tools. This credential type is more secure, and is recommended if the user does not need to use the console.
              -
              -

              User Groups

              -

              You can add a user to one or more user groups. Then the user will inherit the permissions granted to these user groups. The default user group admin has the administrator permissions and all of the permissions required to use all cloud resources.

              -

              Description

              -

              (Optional) Brief description about the user.

              -
              -
              -
            4. Select a type for password generation, set the email address and mobile number, and click OK.
            -

          8. Use the created IAM user to log in to OBS Console and verify the user permissions.
          9. +

          10. Create an IAM user. For details, see section "Creating an IAM User" in the Identity and Access Management User Guide.
          11. Use the created IAM user to log in to OBS Console and verify the user permissions.
          12. diff --git a/docs/obs/umn/obs_03_0037.html b/docs/obs/umn/obs_03_0037.html index 1a2d38329..275fedda5 100644 --- a/docs/obs/umn/obs_03_0037.html +++ b/docs/obs/umn/obs_03_0037.html @@ -2,7 +2,7 @@

            Creating an IAM Agency

            To use some OBS features, you need to use IAM agencies to grant required permissions to OBS for processing your data.

            -

            Creating an Agency for Cross-Region Replication

            1. In the Create Cross-Region Replication Rule dialog box on OBS Console, click Create IAM agencies to jump to the Agencies page on the IAM console.
            2. Click Create Agency to create an agency.
            3. Enter an agency name.
            4. Select Cloud service for the Agency Type.
            5. Select Object Storage Service (OBS) for Cloud Service.
            6. Set a validity period.
            7. In the Permissions area, select Project View, locate Global service [Global], and click Modify Permissions in the Operation column. The Modify Permissions window is displayed.
            8. Click Select Policy/Role in the Operation column of the row where Global service [Global] is displayed. Search for Tenant Administrator and check the box next to it, and click OK.
            9. (Optional) If Replicate KMS encrypted objects is selected when configuring the cross-region replication rule, the KMS Administrator policy set must be configured in the regions where the source bucket and destination bucket are located.

              1. Click Modify Permissions in the row of the region where the source/destination bucket resides. The Modify Permissions dialog box is displayed.
              2. Click Select Policy/Role in the row of the region where the source/destination bucket resides. The Select Policy/Role dialog box is displayed.
              3. Search for KMS and check the box next to the KMS Administrator policy set.
              4. Click OK.
              +

              Creating an Agency for Cross-Region Replication

              1. In the Create Cross-Region Replication Rule dialog box on OBS Console, click Create IAM agencies to jump to the Agencies page on the IAM console.
              2. Click Create Agency.
              3. Enter an agency name.
              4. Select Cloud service for the Agency Type.
              5. Select Object Storage Service (OBS) for Cloud Service.
              6. Set a validity period.
              7. In the Permissions area, select Project View, locate Global service [Global], and click Modify Permissions in the Operation column. The Modify Permissions window is displayed.
              8. Click Select Policy/Role in the Operation column of the row where Global service [Global] is displayed. Search for Tenant Administrator and check the box next to it, and click OK.
              9. (Optional) If Replicate KMS encrypted objects is selected when configuring the cross-region replication rule, the KMS Administrator policy set must be configured in the regions where the source bucket and destination bucket are located.

                1. Click Modify Permissions in the row of the region where the source/destination bucket resides. The Modify Permissions dialog box is displayed.
                2. Click Select Policy/Role in the row of the region where the source/destination bucket resides. The Select Policy/Role dialog box is displayed.
                3. Search for KMS and check the box next to the KMS Administrator policy set.
                4. Click OK.

              10. Click OK to complete the agency creation.
            diff --git a/docs/obs/umn/obs_03_0038.html b/docs/obs/umn/obs_03_0038.html index 562b3bce3..a3b512ed9 100644 --- a/docs/obs/umn/obs_03_0038.html +++ b/docs/obs/umn/obs_03_0038.html @@ -11,7 +11,7 @@
            diff --git a/docs/obs/umn/obs_03_0045.html b/docs/obs/umn/obs_03_0045.html index e0bb58202..5104c88d4 100644 --- a/docs/obs/umn/obs_03_0045.html +++ b/docs/obs/umn/obs_03_0045.html @@ -5,7 +5,7 @@

            You can use Identity and Access Management (IAM) to manage OBS permissions and control access to your resources. IAM provides identity authentication, permissions management, and access control.

            You can create IAM users for your employees, and assign permissions to these users on a principle of least privilege (PoLP) basis to control their access to specific resource types. For example, you can create IAM users for software developers and assign specific permissions to allow them to use OBS resources but prevent them from being able to delete resources or perform any high-risk operations.

            If your account does not require individual IAM users for permissions management, skip this section.

            -

            IAM is offered for free. You pay only for the resources in your account. For more information about IAM, see section "Service Overview" in the Identity and Access Management User Guide.

            +

            IAM is a free service. You only pay for the resources in your account. For more information about IAM, see section "Service Overview" in the Identity and Access Management User Guide.

            OBS Permissions

            By default, new IAM users do not have any permissions assigned. You can assign permissions to these users by adding them to one or more groups and attaching policies to the groups. IAM provides preset system policies that define common permissions for different services, such as full control access and read-only. You can directly use these preset policies.

            OBS is a global service deployed and accessed without specifying any physical region. OBS permissions are assigned to users in the global project, and users do not need to switch regions when accessing OBS.

            RBAC policy: An RBAC policy consists of permissions for an entire service. Users in a group with such a policy assigned are granted all the required permissions, including permissions for accessing and managing that service. RBAC policies do not support operation-specific permission control.

            @@ -724,7 +724,7 @@
            -

            Managing OBS Resource Permissions

            Access to OBS buckets and objects can be controlled by IAM user permissions, bucket policies, and ACLs.

            +

            OBS Resource Permissions Management

            Access to OBS buckets and objects can be controlled by IAM user permissions, bucket policies, and ACLs.

            For more information, see Overview.

            diff --git a/docs/obs/umn/obs_03_0046.html b/docs/obs/umn/obs_03_0046.html index ceee70618..95a0750f9 100644 --- a/docs/obs/umn/obs_03_0046.html +++ b/docs/obs/umn/obs_03_0046.html @@ -8,11 +8,11 @@

            The temporary authentication information contains the AccessKeyId, Expires, x-obs-security-token, and Signature parameters. AccessKeyId, x-obs-security-token, and Signature are used for authentication. The Expires parameter specifies the validity period of the authentication.

            After an object is shared on OBS Console, the system will generate a URL that contains the temporary authentication information, valid for five minutes since its generation by default. Each time you change the validity period of a URL, OBS obtains the authentication information again to generate a new URL for sharing, which takes effect since the time when the validity period is changed.

          -

          Limitations and Constraints

          • An object shared from OBS Console can be valid for one minute to 18 hours. If you need a longer validity period for a shared object, use the client tool OBS Browser+ that supports a validity period from one minute to 30 days. Or, you can configure a bucket policy or object policy to grant the access permissions of an object to other users permanently.
          • Only buckets of version 3.0 support file sharing. You can view the bucket version in the Basic Information area on the Overview page of a bucket.
          • Encrypted objects cannot be shared.
          • To share a cold object, restore it first.
          +

          Limitations and Constraints

          • An object shared from OBS Console can be valid for one minute to 18 hours. If you need a longer validity period, use OBS Browser+ that allows a validity period from one minute to 30 days. Or, you can configure a bucket policy or object policy to grant other users access to the object permanently.
          • Only buckets of version 3.0 support object sharing. You can view the bucket version in the Basic Information area on the Overview page of a bucket.
          • Encrypted objects cannot be shared.
          • To share a cold object, restore it first.

          Procedure

          1. In the bucket list, click the bucket you want to operate. The Overview page is displayed.
          2. In the navigation pane, choose Objects.
          3. Locate the file to be shared and click Share in the Operation column.

            Once the Share File dialog box is opened, the URL is effective and valid for five minutes by default. If you change the validity period, the authentication information in the URL changes accordingly, and the URL's new validity period starts upon the change.

            Figure 1 Sharing a file
            -

          4. Operate the URL as follows:

            • Click Open URL to preview the file on a new page or directly download it to your default download path.
            • Click Copy Link to share the link to others for them to access this file using a browser.
            • Click Copy Path to share the file path to users who have access permissions to the bucket. The users then can search for the file by pasting the shared path to the search box of the bucket.
            +

          5. Operate the URL as follows:

            • Click Open URL to preview the file on a new page or directly download it to your default download path.
            • Click Copy Link to share the link to others for them to access this file using a browser.
            • Click Copy Path to share the file path to users who have access to the bucket. The users then can search for the file by pasting the shared path to the search box of the bucket.

            Within the URL validity period, anyone who has the URL can access the file.

          diff --git a/docs/obs/umn/obs_03_0047.html b/docs/obs/umn/obs_03_0047.html index d39753246..e148a37fc 100644 --- a/docs/obs/umn/obs_03_0047.html +++ b/docs/obs/umn/obs_03_0047.html @@ -8,7 +8,7 @@
          diff --git a/docs/obs/umn/obs_03_0049.html b/docs/obs/umn/obs_03_0049.html index d50c5a960..47cdac307 100644 --- a/docs/obs/umn/obs_03_0049.html +++ b/docs/obs/umn/obs_03_0049.html @@ -1,8 +1,8 @@

          Principals

          -

          The principals indicate the users which the bucket policies apply to. These users can be accounts, federated users or federated user groups, and IAM users. Target users can be specified in either of the following ways:

          -
          • Include: The policy takes effect on specified users.
          • Exclude: The policy takes effect on all users except the specified ones.
          +

          The principals indicate the users bucket policies apply to. These users can be accounts, federated users or federated user groups, and IAM users. Target users can be specified in either of the following ways:

          +
          • Include: The policy applies to specified users.
          • Exclude: The policy applies to users except the specified ones.

          Cloud Service User

          • IAM users in the current account

            With Principal set to Current account, you can select one or more IAM users under this account, so the bucket policy applies to the selected IAM users.

          • Other account

            When the Principal is set to Other account, you can enter the ID of other accounts. If you want to apply the bucket policy to IAM users under that account, you need to enter the user IDs, and use commas (,) to separate one from another.

            An authorized user can go to the My Credential page to obtain the domain ID and user ID after login.

            diff --git a/docs/obs/umn/obs_03_0051.html b/docs/obs/umn/obs_03_0051.html index 6fdf0d761..43a78d044 100644 --- a/docs/obs/umn/obs_03_0051.html +++ b/docs/obs/umn/obs_03_0051.html @@ -3,7 +3,7 @@

            Actions

            Actions are related to resources. When the resource is the current bucket, bucket-related actions should be configured in a bucket policy. When objects are specified as resources, object-related actions should be configured in a bucket policy.

            Actions can be specified in either of the following ways:

            -
            • Include: The policy takes effect on specified actions.
            • Exclude: The policy takes effect on all actions except the specified ones.
            +
            • Include: The bucket policy applies to specified actions.
            • Exclude: The bucket policy applies to actions except the specified ones.

            Actions Related to Buckets

            diff --git a/docs/obs/umn/obs_03_0054.html b/docs/obs/umn/obs_03_0054.html index c7cb139da..298f78db6 100644 --- a/docs/obs/umn/obs_03_0054.html +++ b/docs/obs/umn/obs_03_0054.html @@ -16,12 +16,12 @@ - - - - - - - - - + + +
            Table 1 Actions related to buckets

            Type

            Basic object operations

            Allow you to manage objects, including uploads, multipart uploads, downloads, storage class change, restore of Cold objects, and deletion.

            +

            Allow you to manage objects, including uploading (multipart uploads included), downloading, and deleting objects, as well as changing object storage classes and restoring Cold objects.

            Server-side encryption

            Encrypts data on servers to enhance security of data stored on OBS.

            +

            Encrypts objects on the server side to enhance security of objects stored on OBS.

            Object metadata

            @@ -62,7 +62,7 @@

            Permission control

            Controls OBS access permissions through IAM policies, bucket/object policies, and bucket/object access control lists (ACLs).

            +

            Controls access to OBS using IAM policies, bucket/object policies, and bucket/object access control lists (ACLs).

            Lifecycle management

            @@ -72,33 +72,33 @@

            Cross-region replication

            Implements object replication across regions under the same account. By configuring cross-region replication rules, you can enable OBS to automatically and asynchronously copy data from a source bucket to a destination bucket in another region.

            -

            Therefore, cross-region replication provides the capability for data disaster recovery across regions, catering to your needs for off-site data backup.

            +

            Implements object replication across regions under the same account. A cross-region replication rule enables OBS to automatically, asynchronously copy data from a source bucket in one region to a destination bucket in a different region.

            +

            This provides disaster recovery across regions, catering to your needs for remote backup.

            Tags

            Identifies and classifies buckets in OBS.

            +

            Help you identify and classify buckets in OBS.

            Static website hosting

            Supports the hosting of static website content in buckets, and supports redirection of bucket access requests to specific hosts.

            +

            Supports the hosting of static websites in buckets and the redirection of access requests for buckets.

            User-defined domain name configuration

            Binds your website domain names to bucket domain names. This function applies to the following scenario: migrating files from a website to OBS without modifying the code of the web page, and keeping the link of the website unchanged.

            +

            Enables you to bind your website domain name to a bucket domain name. If you want to migrate files from your website to OBS while keeping the website address unchanged, you can use this function.

            URL validation

            Provides URL validation to prevent object links of OBS from being stolen by other websites.

            +

            Prevents object links in OBS from being stolen by other websites.

            Cross origin resource sharing (CORS)

            Allows a web client in one origin to interact with resources in another one. CORS is a browser-standard mechanism defined by the World Wide Web Consortium (W3C). For general web page requests, website scripts and contents in one origin cannot interact with those in another because of Same Origin Policies (SOPs).

            +

            Allows a web client in one origin to interact with resources in another one. Cross origin resource sharing (CORS) is a browser-standard mechanism defined by the World Wide Web Consortium (W3C). For general web page requests, website scripts and contents in one origin cannot interact with those in another because of Same Origin Policies (SOPs).

            Requester pays

            @@ -106,6 +106,11 @@

            Lets the requester pay for data transfer and API calls associated with accessing resources in the bucket and you (the bucket owner) pay for only data storage in the bucket.

            Bucket inventory

            +

            Periodically provides CSV files that list object information in the bucket and delivers the CSV files to the specified bucket.

            +
            diff --git a/docs/obs/umn/obs_03_0074.html b/docs/obs/umn/obs_03_0074.html index cdc536417..792afd7ec 100644 --- a/docs/obs/umn/obs_03_0074.html +++ b/docs/obs/umn/obs_03_0074.html @@ -17,7 +17,7 @@
          diff --git a/docs/obs/umn/obs_03_0075.html b/docs/obs/umn/obs_03_0075.html index aba22a04f..021578247 100644 --- a/docs/obs/umn/obs_03_0075.html +++ b/docs/obs/umn/obs_03_0075.html @@ -21,7 +21,7 @@
  9. Indicates the user that the object policy applies to.

    -
    • Include: The policy takes effect on specified users.
    • Exclude: The policy takes effect on all users except the specified ones.
    +
    • Include: The policy applies to specified users.
    • Exclude: The policy applies to users except the specified ones.

    Resources

    @@ -29,7 +29,7 @@

    Include or Exclude

    Resources on which the object policy takes effect.

    -
    • Include: The policy takes effect on the specified OBS resources.
    • Exclude: The policy takes effect on all OBS resources except the specified ones.
    +
    • Include: The bucket policy applies to specified OBS resources.
    • Exclude: The bucket policy applies to OBS resources except the specified ones.

    Specifies users on whom this object policy takes effect, including cloud service users and federated users. A cloud service user is the one who accesses the cloud services through registration with the cloud services. A federated user is the one who accesses the cloud services through federated identity authentication.

    -
    • Include: The policy takes effect on specified users.
    • Exclude: The policy takes effect on all users except the specified ones.
    +
    • Include: The policy applies to specified users.
    • Exclude: The policy applies to users except the specified ones.

    Resources

    @@ -67,7 +67,7 @@
    • Include or Exclude

    Resources on which the object policy takes effect.

    -
    • Include: The policy takes effect on the specified OBS resources.
    • Exclude: The policy takes effect on all OBS resources except the specified ones.
    +
    • Include: The bucket policy applies to specified OBS resources.
    • Exclude: The bucket policy applies to OBS resources except the specified ones.

    Actions

    @@ -75,7 +75,7 @@

    Operation stated in the object policy.

    -
    • Include: The policy takes effect on specified actions.
    • Exclude: The policy takes effect on all actions except the specified ones.
    +
    • Include: The bucket policy applies to specified actions.
    • Exclude: The bucket policy applies to actions except the specified ones.

    Conditions

    @@ -88,13 +88,13 @@
    -

  10. Click OK.

    After the object policy is configured successfully, it is displayed in the list under Custom Bucket Policies.

    +

  11. Click OK.

    After the object policy is configured successfully, it is displayed in the list under Custom Bucket Policies in the Bucket Policies tab on the Permissions page.

diff --git a/docs/obs/umn/obs_03_0080.html b/docs/obs/umn/obs_03_0080.html index b903c7176..a9f921c26 100644 --- a/docs/obs/umn/obs_03_0080.html +++ b/docs/obs/umn/obs_03_0080.html @@ -1,9 +1,9 @@ -

Granting an IAM User with the Operation Permissions for a Specified Bucket

+

Granting an IAM User Permissions to Operate a Specific Bucket

Create an IAM user under in an account. The IAM user has no permission to any resource before it is added to any user group. The bucket owner (root account) or other accounts and IAM users, who have the permission to set bucket policies, can configure bucket policies to grant the bucket operation permissions to IAM users.

The following is an example about how to grant an IAM user the bucket access and object upload permissions.

-

Procedure

  1. In the bucket list, click the bucket you want to operate. The Overview page is displayed.
  2. In the navigation pane, choose Permissions.
  3. Choose Bucket Policies > Custom Bucket Policies.
  4. Click Create Bucket Policy. The Create Bucket Policy dialog box is displayed.
  5. Configure parameters listed in the table below to grant an IAM user the permission to access the bucket (listing objects in the bucket).

    +

    Procedure

    1. In the bucket list, click the bucket you want to operate. The Overview page is displayed.
    2. In the navigation pane, choose Permissions.
    3. Choose Bucket Policies > Custom Bucket Policies.
    4. Click Create Bucket Policy. The Create Bucket Policy dialog box is displayed.
    5. Configure parameters listed in the table below to grant an IAM user the permission to access the bucket (to list objects in the bucket).

      Table 1 Parameters for granting permission to access a bucket

      Parameter

      Value

      @@ -38,7 +38,7 @@
      -

    6. Click OK.
    7. Click Create Bucket Policy. The Create Bucket Policy dialog box is displayed.
    8. Configure parameters in the table below to grant an IAM user the permission to upload objects to a bucket.

      Before authorizing the IAM user with the permission to operate objects, ensure that the user has the permission to access the bucket.

      +

    9. Click OK.
    10. Click Create Bucket Policy. The Create Bucket Policy dialog box is displayed.
    11. Configure parameters in the table below to grant an IAM user the permission to upload objects to a bucket.

      Before granting this permission to a user, ensure that the user has the permission to access the bucket.

      diff --git a/docs/obs/umn/obs_03_0081.html b/docs/obs/umn/obs_03_0081.html index 5d5b25993..7731de9be 100644 --- a/docs/obs/umn/obs_03_0081.html +++ b/docs/obs/umn/obs_03_0081.html @@ -1,14 +1,14 @@ -

      Granting Other Accounts with the Operation Permissions for a Specified Bucket

      +

      Granting Other Accounts Permissions to Operate a Specific Bucket

      The bucket owner (root account) or other accounts and IAM users, who have the permission to set bucket policies, can configure bucket policies to grant the bucket operation permissions to other accounts or IAM users under other accounts.

      -

      The following is an example about how to authorize other accounts with the bucket access and object upload permissions.

      -

      To grant permissions to IAM users under other accounts, you need to configure a bucket policy and also IAM policies.

      -
      1. Configure a bucket policy to allow IAM users to access the bucket.
      2. Configure IAM policies for the account to which the authorized IAM user belongs, to allow the IAM user to access the bucket.
      +

      The following is an example about how to grant other accounts bucket access and object upload permissions.

      +

      To grant permissions to IAM users under other accounts, you need to configure both bucket policies and IAM policies.

      +
      1. Configure a bucket policy to allow IAM users to access the bucket.
      2. Configure IAM policies for the account where authorized IAM users belong, to allow the IAM users to access the bucket.

      Only permissions that are allowed by both the bucket policy and IAM policies can take effect.

      -

      Procedure

      1. In the bucket list, click the bucket you want to operate. The Overview page is displayed.
      2. In the navigation pane, choose Permissions.
      3. Choose Bucket Policies > Custom Bucket Policies.
      4. Click Create Bucket Policy. The Create Bucket Policy dialog box is displayed.
      5. Set the following parameters to authorize another account with the permission to access the bucket:

        -

      Table 2 Parameters for granting permission to upload objects

      Parameter

      @@ -70,7 +70,7 @@

      Actions

      • Include
      • PutObject
      -
      NOTE:

      In this example, only the permission to upload objects is granted. You can select multiple actions and granting other operation permissions to the IAM user The asterisk (*) indicates all operations.

      +
      NOTE:

      In this example, only the permission to upload objects is granted. You can also select other object actions to grant corresponding permissions if needed. The asterisk (*) indicates all actions.

      For details about the supported actions, see Actions.

      Table 1 Parameters for granting permission to access a bucket

      Parameter

      +

      Procedure

      1. In the bucket list, click the bucket you want to operate. The Overview page is displayed.
      2. In the navigation pane, choose Permissions.
      3. Choose Bucket Policies > Custom Bucket Policies.
      4. Click Create Bucket Policy. The Create Bucket Policy dialog box is displayed.
      5. Configure the parameters listed in the table below to grant other accounts bucket access permission.

        +

        @@ -43,7 +43,7 @@
        Table 1 Parameters for granting bucket access permission

        Parameter

        Value

        -

      6. Click OK.
      7. Click Create Bucket Policy. The Create Bucket Policy dialog box is displayed.
      8. Set the following parameters to authorize another account with the permission to upload objects:

        Before authorizing the user with the permission to operate objects, ensure that the user has the permission to access the bucket.

        +

      9. Click OK.
      10. Click Create Bucket Policy. The Create Bucket Policy dialog box is displayed.
      11. Configure the parameters listed in the table below to grant other accounts the object upload permission:

        Before granting this permission to a user, ensure that the user has the permission to access the bucket.

        Table 2 Parameters for granting permission to upload objects

        Parameter

        diff --git a/docs/obs/umn/obs_03_0082.html b/docs/obs/umn/obs_03_0082.html new file mode 100644 index 000000000..5dcfeb04a --- /dev/null +++ b/docs/obs/umn/obs_03_0082.html @@ -0,0 +1,17 @@ + + +

        Bucket Inventories

        +
        + + diff --git a/docs/obs/umn/obs_03_0083.html b/docs/obs/umn/obs_03_0083.html new file mode 100644 index 000000000..5415af2ec --- /dev/null +++ b/docs/obs/umn/obs_03_0083.html @@ -0,0 +1,16 @@ + + +

        Bucket Inventory Overview

        +

        The bucket inventory function periodically generates lists of metadata information of objects in a bucket. Inventories help you better understand object statuses in the bucket.

        +

        An inventory is a CSV file. Inventory files are automatically uploaded to the specified bucket.

        +

        You specify that inventories are generated for objects with the same object name prefix. You can also determine the inventory generation interval and whether to list all object versions in the inventory file. The object metadata you specify in the inventory include the file size, last modification time, storage class, ETag, multipart upload, encryption status, and replication status.

        +

        Limitations and Constraints

        • A bucket can have a maximum of 10 inventory rules.
        • The source bucket (for which a bucket inventory rule is configured) and the target bucket (where the generated inventory files are stored) must belong to the same account.
        • The source bucket and the target bucket must be in the same region.
        • Inventory files must be in the CSV format.
        • OBS can generate inventory files for all objects in a bucket or a group of objects whose names begin with the same prefix.
        • If a bucket has multiple inventory rules, overlaps between the inventory rules are not allowed.
          • If a bucket already has an inventory rule for the entire bucket, new inventory rules that filter objects by prefixes cannot be created. If you need an inventory rule that covers only a subset of objects in the bucket, delete the inventory rule configured for the entire bucket.
          • If an inventory rule that filters objects by a specified prefix already exists, you cannot create an inventory rule for the entire bucket. To create an inventory rule for the entire bucket, make sure that the bucket has no other inventory rules that filter objects by specified prefixes.
          • If a bucket already has an inventory rule that filters objects by the object name prefix ab, the filter of a new inventory rule cannot start with a or ab. Or, you can delete the existing inventory rule and create a new one that filters objects according to your needs.
          +
        • Bucket inventory files can be encrypted only in the SSE-KMS mode.
        • Default encryption cannot be enabled for the target bucket configured for storing inventory files.
        +
        +
        +
        + +
        + diff --git a/docs/obs/umn/obs_03_0084.html b/docs/obs/umn/obs_03_0084.html new file mode 100644 index 000000000..bd157b4dd --- /dev/null +++ b/docs/obs/umn/obs_03_0084.html @@ -0,0 +1,88 @@ + + +

        Configuring a Bucket Inventory

        +

        Procedure

        1. In the bucket list, click the bucket you want to operate. The Overview page is displayed.
        2. In the navigation pane, click Inventories. The inventory list is displayed.
        3. Click Create. The Create Inventory dialog box is displayed.
        4. Configure required parameters.

          +

          + + + + + + + + + + + + + + + + + + + + + + +
          Table 1 Parameters for configuring a bucket inventory

          Parameter

          +

          Description

          +

          Inventory Name

          +

          Name of a bucket inventory

          +

          Filter

          +

          Filter of an inventory. You can enter an object name prefix for OBS to create an inventory for objects with the specified prefix.

          +

          Currently, only a prefix can be used as a filter. If the filter is not specified, the inventory covers all objects in the bucket.

          +

          If a bucket has multiple inventories, their filters cannot overlap with each other.

          +

          Save Inventory Files To

          +

          Select a bucket (destination bucket) for saving generated inventory files. This bucket must be in the same region as the source bucket.

          +

          Inventory File Name Prefix

          +

          Prefix of the inventory file path.

          +

          An inventory file will be saved in the following path: Inventory file name prefix/Source bucket name/Inventory name/Date and time/files/.

          +

          If this parameter is not specified, OBS automatically adds BucketInventory as the prefix to inventory file's path.

          +

          Frequency

          +

          How frequently inventory files are generated. It can be set to Daily or Weekly.

          +

          Status

          +

          Inventory status. You can enable or disable the generation of inventories.

          +
          +
          +

        5. Click Next to go to the Configure Report page.
        6. Configure the report.

          +

          + + + + + + + + + + + + + + + + +
          Table 2 Report related parameters

          Parameter

          +

          Description

          +

          Inventory Format

          +

          Inventory files can only be saved in CSV format.

          +

          Object Versions

          +

          Object versions that you want to list in an inventory file. It can be set to Current version only or Include all versions.

          +

          Optional Fields

          +

          Object information fields that can be contained in an inventory file, including Size, Last modified date, Storage class, ETag, Multipart upload, Encryption status, and Replication status.

          +

          Send Notification

          +

          If there is a new inventory file generated, a notification will be sent to the email address or mobile number specified in the SMN topic.

          +

          If you enable the notification function, an SMN event notification rule will be created in the bucket where inventory files are stored. You can view details about the rule on the Event Notification page of the bucket. If you disable the notification function or modify the SMN topic, the SMN event notification rule will also be deleted or modified.

          +
          +
          +

        7. Click Next to confirm the bucket policy.

          OBS then automatically creates a bucket policy on the destination bucket to grant OBS permission to write inventory files to the bucket.

          +

        8. Click OK.
        +
        +
        +
        + +
        + diff --git a/docs/obs/umn/obs_03_0086.html b/docs/obs/umn/obs_03_0086.html index 821c8f1df..4d6b16e2b 100644 --- a/docs/obs/umn/obs_03_0086.html +++ b/docs/obs/umn/obs_03_0086.html @@ -1,6 +1,6 @@ -

        Permission Control

        +

        Permissions Control