本頁說明如何建立啟用階層式命名空間的值區。
必要的角色
如要取得必要權限,以便建立啟用階層式命名空間的值區,請要求管理員授予您專案的儲存空間管理員 (roles/storage.admin
) 身分與存取權管理角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。
這個預先定義的角色具備 storage.buckets.create
權限,這是建立啟用階層式命名空間的值區時的必要權限。
建立啟用階層命名空間的值區
控制台
如要在值區上啟用階層式命名空間,請先按照步驟建立新值區,然後執行下列操作:
- 在「選擇資料儲存方式」專區中,找到「為資料密集型工作負載提供最理想的儲存空間」專區,然後選取「在這個 bucket 上啟用階層式命名空間」。
- 完成其餘步驟,即可完成建立值區。
指令列
-
In the Trusted Cloud console, activate Cloud Shell.
At the bottom of the Trusted Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
-
在開發環境中,執行
gcloud storage buckets create
指令:gcloud storage buckets create gs://BUCKET_NAME --location=BUCKET_LOCATION --uniform-bucket-level-access --enable-hierarchical-namespace
其中:
BUCKET_NAME
是您要授予值區的名稱,必須遵守命名要求。例如:my-bucket
。BUCKET_LOCATION
是值區的位置。例如:us-east1
。--uniform-bucket-level-access
:為值區啟用統一值區層級存取權。
--enable-hierarchical-namespace
:為 bucket 啟用階層命名空間。您無法在現有 bucket 中啟用階層命名空間。
如果要求成功,指令會傳回下列訊息:
Creating gs://BUCKET_NAME/...
設定下列標記,進一步控管值區的建立作業:
--project
:指定要與值區建立關聯的專案 ID 或專案編號。例如:my-project
。--default-storage-class
:指定值區的預設儲存空間級別。例如:STANDARD
。
如需使用 Google Cloud CLI 建立水桶的完整選項清單,請參閱
buckets create
選項。例如:
gcloud storage buckets create gs://BUCKET_NAME --project=PROJECT_ID --default-storage-class=STORAGE_CLASS --location=BUCKET_LOCATION --uniform-bucket-level-access
安裝並初始化 gcloud CLI,以便為
Authorization
標頭產生存取權杖。- 建立包含值區設定的 JSON 檔案,其中必須包含值區的
name
。如需完整的設定清單,請參閱「 Buckets: Insert」說明文件。以下是常見的設定: BUCKET_NAME
是您要授予值區的名稱,必須遵守命名要求。例如:my-bucket
。BUCKET_LOCATION
是您希望儲存值區物件資料的位置。例如:US-EAST1
。STORAGE_CLASS
是值區的預設儲存空間級別。例如:STANDARD
。hierarchicalNamespace.enabled
設為TRUE
,即可為 bucket 啟用階層命名空間。您無法在現有 bucket 中啟用階層命名空間。uniformBucketLevelAccess.enabled
設為TRUE
,為 bucket 啟用統一值區層級存取權。
- 使用
cURL
呼叫 JSON API:curl -X POST --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage.s3nsapis.fr/storage/v1/b?project=PROJECT_IDENTIFIER"
其中:
JSON_FILE_NAME
是包含 bucket 設定的 JSON 檔案名稱。PROJECT_IDENTIFIER
是要與值區建立關聯的專案 ID 或編號。例如:my-project
。
用戶端程式庫
C++
詳情請參閱 Cloud Storage C++ API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
C#
詳情請參閱 Cloud Storage C# API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
Go
詳情請參閱 Cloud Storage Go API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
Java
詳情請參閱 Cloud Storage Java API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
Node.js
詳情請參閱 Cloud Storage Node.js API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
PHP
詳情請參閱 Cloud Storage PHP API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
Python
詳情請參閱 Cloud Storage Python API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
Ruby
詳情請參閱 Cloud Storage Ruby API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
REST API
JSON API
{ "name": "BUCKET_NAME", "location": "BUCKET_LOCATION", "storageClass": "STORAGE_CLASS", "hierarchicalNamespace": { "enabled": "BOOLEAN" }, "iamConfiguration": { "uniformBucketLevelAccess": { "enabled": true }, }, }
其中: