本頁說明如何使用 Google Cloud 控制台、Google Cloud CLI 或 API 查看資料夾詳細資料、更新資料夾設定及刪除資料夾。瞭解如何修改資料夾顯示名稱,以及管理機構階層中的資料夾位置。
列出資料夾並查看資料夾詳細資料
如要列出資料夾,或查看特定資料夾的中繼資料 (例如顯示名稱、上層 ID 和生命週期狀態),您必須擁有資料夾檢視者角色 (roles/resourcemanager.folderViewer) 或機構檢視者角色 (roles/resourcemanager.organizationViewer)。
控制台
在 Google Cloud 控制台中,開啟「Manage resources」(管理資源) 頁面。
資源清單會以表格形式顯示階層。選取機構資源。
按一下機構名稱旁的箭頭,展開樹狀檢視畫面,即可查看子資料夾。
如要執行動作 (例如移動、刪除或查看設定),請按一下該特定資源列尾端的「動作」。
使用資源清單頂端的「篩選」列,依名稱、ID 或標籤搜尋資源。
使用專案選取器
使用頂端導覽列的專案選擇工具,將有效環境切換至特定專案或資料夾。
在 Google Cloud 控制台的頂端導覽列中,按一下專案挑選器。這個下拉式選單位於 Google Cloud 標誌旁。
在隨即顯示的對話方塊中,從下拉式選單選取機構,篩選結果。
瀏覽階層或搜尋要切換的專案或資料夾。 點選這個挑選器中的資源會變更全域環境,進而影響其他服務頁面 (例如 Compute Engine 或 Cloud Storage) 中顯示的資源。
gcloud
如要取得單一資料夾的詳細資料,請使用 resource-manager folders describe 指令。
gcloud resource-manager folders describe FOLDER_ID
將 FOLDER_ID 替換為要查看的資料夾 ID。
如要列出機構資源的子資料夾,請使用 resource-manager folders list 指令。
gcloud resource-manager folders list \
--organization ORGANIZATION_ID
將 ORGANIZATION_ID 替換為要查看子資料夾清單的機構資源 ID。
如要列出資料夾資源的子資料夾,請使用 resource-manager folders list 指令。
gcloud resource-manager folders list \
--folder FOLDER_ID
將 FOLDER_ID 替換為要查看子資料夾清單的資料夾資源 ID。
如要列出機構、資料夾資源或資料夾下的專案,請使用 projects list 指令搭配 filter 引數。
gcloud projects list \
--filter=" parent.id: 'RESOURCE_ID' "
將 RESOURCE_ID 替換為要查看子專案清單的機構或資料夾資源 ID。
REST
取得資料夾的 curl 要求:
curl -X GET -H "Content-Type: application/json" \
-H "Authorization: Bearer ${bearer_token}" \
https://cloudresourcemanager.googleapis.com/v3/FOLDER_ID
將 FOLDER_NAME 替換為資料夾名稱,例如 folders/123。
列出資料夾的 curl 要求:
curl -X GET -H "Content-Type: application/json" \
-H "Authorization: Bearer ${bearer_token}" \
https://cloudresourcemanager.googleapis.com/v3/folders?parent=PARENT_NAME
將 PARENT_NAME 替換為您要在其中建立資料夾的父項資源名稱,例如 organizations/123 或 folders/123。
更新資料夾
如要更新資料夾的顯示名稱,您必須擁有該資料夾的「資料夾編輯者」角色 (roles/resourcemanager.folderEditor) 或「資料夾管理員」角色 (roles/resourcemanager.folderAdmin)。
控制台
在 Google Cloud 控制台中,開啟「Manage resources」(管理資源) 頁面。
按一下機構名稱旁的箭頭,展開樹狀檢視畫面,即可查看子資料夾。
在要更新的資料夾列中,按一下列尾的「動作」選單,然後按一下「設定」。
輸入新資料夾名稱,然後按一下「儲存」。
gcloud
如要更新資料夾的顯示名稱,請按照下列步驟操作:
gcloud resource-manager folders update FOLDER_ID --display-name="NEW_DISPLAY_NAME"
更改下列內容:
FOLDER_ID:要更新的資料夾 ID。NEW_DISPLAY_NAME:資料夾的新顯示名稱。
REST
使用任何要求資料之前,請先修改下列項目的值:
- FOLDER_ID: Google Cloud 資料夾 ID
- NEW_DISPLAY_NAME:資料夾的新顯示名稱
HTTP 方法和網址:
PATCH https://cloudresourcemanager.googleapis.com/v3/folders/FOLDER_ID?updateMask=displayName
JSON 要求內文:
{
"displayName": "NEW_DISPLAY_NAME"
}
如要傳送要求,請選擇以下其中一個選項:
curl
將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://cloudresourcemanager.googleapis.com/v3/folders/FOLDER_ID?updateMask=displayName"
PowerShell
將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://cloudresourcemanager.googleapis.com/v3/folders/FOLDER_ID?updateMask=displayName" | Select-Object -Expand Content
您應該會收到如下的 JSON 回覆:
{
"name": "operations/fc.1234567890abcdef",
"metadata": {
"@type": "type.googleapis.com/google.cloud.resourcemanager.v3.FolderOperationMetadata",
"displayName": "NEW_DISPLAY_NAME",
"operationType": "UPDATE",
"resourceName": "folders/FOLDER_ID"
},
"done": false
}
將資料夾移入其他資料夾
如要將資料夾移入其他資料夾,您在來源資料夾及目的地資料夾都必須具備 resourcemanager.folders.move 權限。
控制台
將資料夾移至主控台其他資料夾的程序與移動專案相似。
- 在 Google Cloud 控制台中,開啟「Manage resources」(管理資源) 頁面。
- 在頁面左上角的「機構」下拉式選單中,選取您的機構資源。
- 在專案和資料夾清單中,按一下資料夾資料列以選取資料夾。
- 按一下資料列中的選項選單 (垂直的刪節號圖示),再按一下「移動」。
- 按一下 [瀏覽],選取資料夾要移入的資料夾。
- 按一下 [移動]。
gcloud
如要移動機構資源下的資料夾,請在 Google Cloud CLI 中執行以下指令:
gcloud resource-manager folders move FOLDER_ID \ --organization=PARENT_ID
更改下列內容:
FOLDER_ID:要移動的資料夾 ID。PARENT_ID:父項機構資源的 ID。
如何移動其他資料夾下的資料夾:
gcloud resource-manager folders move FOLDER_ID \ --folder=PARENT_ID
更改下列內容:
FOLDER_ID:要移動的資料夾 ID。PARENT_ID:父項機構資源或資料夾的 ID。
REST
要求 JSON:
request_json= '{
destinationParent: "folders/DESTINATION_FOLDER_ID"
}'
「移動資料夾」curl 要求:
curl -X POST -H "Content-Type: application/json" \
-H "Authorization: Bearer ${bearer_token} \
-d "$request_json" \
https://cloudresourcemanager.googleapis.com/v3/folders/DISPLAY_NAME:move
更改下列內容:
- DESTINATION_FOLDER_ID:其他資料夾要移入的資料夾的 ID,例如
98765。 - DISPLAY_NAME:要移動的資料夾的顯示名稱,例如「我的百寶箱」。
「移動資料夾」回應:
{
"name": "operations/fm.1234567890",
"metadata": {
"@type": "type.googleapis.com/google.cloud.resourcemanager.v3.FolderOperation",
"displayName": "DISPLAY_NAME",
"operationType": "MOVE"
}
}
「取得作業」curl 要求:
curl -H "Authorization: Bearer ${bearer_token}" \
https://cloudresourcemanager.googleapis.com/v3/operations/fm.1234567890
「取得作業」回應:
{
"name": "operations/fm.1234567890",
"metadata": {
"@type": "type.googleapis.com/google.cloud.resourcemanager.v3.FolderOperation",
"displayName": "DISPLAY_NAME",
"operationType": "MOVE"
},
"done": true,
"response": {
"@type": "type.googleapis.com/google.cloud.resourcemanager.v3.Folder",
"name": "folders/12345",
"parent": "folders/98765",
"displayName": "DISPLAY_NAME",
"lifecycleState": "ACTIVE",
"createTime": "2017-07-19T23:29:26.018Z",
"updateTime": "2017-07-20T00:54:44.295Z"
}
}
刪除資料夾
如要刪除資料夾,您必須擁有資料夾的「資料夾編輯者」角色 (roles/resourcemanager.folderEditor) 或「資料夾管理員」角色 (roles/resourcemanager.folderAdmin)。
控制台
在 Google Cloud 控制台中,開啟「Manage resources」(管理資源) 頁面。
前往 Google Cloud 控制台的「管理資源」頁面。按一下機構名稱旁的箭頭,展開樹狀檢視畫面,即可查看子資料夾。
在要刪除的資料夾列中,按一下列尾的「動作」選單,然後按一下「刪除」。
在確認對話方塊中輸入資料夾 ID 或名稱來確認,然後按一下「刪除」。
gcloud
如要刪除資料夾,請執行下列指令:
gcloud resource-manager folders delete FOLDER_ID
更改下列內容:
FOLDER_ID:要刪除的資料夾 ID。
REST
使用任何要求資料之前,請先修改下列項目的值:
- FOLDER_ID: Google Cloud 資料夾 ID
HTTP 方法和網址:
DELETE https://cloudresourcemanager.googleapis.com/v3/folders/FOLDER_ID
如要傳送要求,請選擇以下其中一個選項:
curl
執行下列指令:
curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://cloudresourcemanager.googleapis.com/v3/folders/FOLDER_ID"
PowerShell
執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://cloudresourcemanager.googleapis.com/v3/folders/FOLDER_ID" | Select-Object -Expand Content
您應該會收到如下的 JSON 回覆:
{
"name": "operations/fc.1234567890abcdef",
"metadata": {
"@type": "type.googleapis.com/google.cloud.resourcemanager.v3.FolderOperationMetadata",
"operationType": "DELETE",
"resourceName": "folders/FOLDER_ID"
},
"done": false
}
其他資訊
刪除資料夾後,資料夾會進入虛刪除狀態,保留 30 天後才會永久刪除或強制刪除。
軟刪除狀態:在 30 天的保留期限內,系統會將資料夾標示為待刪除,且資料夾不再處於有效狀態。您無法在暫時刪除的資料夾中建立新專案或子資料夾。
永久刪除狀態:30 天後, Google Cloud 系統會永久移除資料夾及其相關中繼資料。這個動作無法復原。
取消刪除:如果不小心刪除資料夾,您可以在 30 天內使用 gcloud resource-manager folders undelete 指令或 API 還原資料夾。
必要條件和限制
- 資料夾必須為空:如果資料夾仍包含進行中的專案或子資料夾,就無法刪除。您必須先移動或刪除所有子項資源。
- 必要權限:如要刪除或取消刪除資料夾,您必須擁有「資料夾編輯者」(
roles/resourcemanager.folderEditor) 或「資料夾管理員」(roles/resourcemanager.folderAdmin) 角色。
搜尋
如要搜尋符合指定查詢的資料夾,請使用 gcloud alpha resource-manager
folders search,並在 --query 旗標中傳遞條件。搜尋範圍是使用者具備檢視權限的所有資料夾。
gcloud alpha resource-manager folders search --query="name:vij*"
<table output showing the folders with names starting from vij eg. vijeta, vijay-folder>
gcloud alpha resource-manager folders search --query="state:DELETE_REQUESTED"
<table output showing folders for which delete has been requested>
使用 gcloud folders search 指令,即可顯示使用者具有檢視權限的所有資料夾。
gcloud folders search
<table output showing all viewable folders>