本頁說明如何擷取專案中繼資料,以及修改現有專案設定。您也可以根據資源階層中的狀態或顯示名稱,搜尋特定專案。
找出專案名稱、編號和 ID
如要與 Google Cloud 資源互動,您必須為每個要求提供專案的識別資訊。專案 ID 和專案編號可用來識別專案。
控制台
前往 Google Cloud 控制台的「Welcome」(歡迎) 頁面。
在頁面頂端的專案挑選器中選取專案。
專案名稱、專案編號和專案 ID 會顯示在「歡迎」標題下方。
取得現有專案
如要取得特定 Google Cloud 專案的詳細中繼資料,例如專案的生命週期狀態、建立時間和父項資源,請使用 Google Cloud CLI 或 API。
您必須具備專案擁有者身分或「瀏覽者」角色權限 (roles/browser),才能存取專案詳細資料。
gcloud
使用下列任何指令資料之前,請先替換以下項目:
- PROJECT_ID: Google Cloud 專案 ID
執行下列指令:
Linux、macOS 或 Cloud Shell
gcloud projects describe PROJECT_ID
Windows (PowerShell)
gcloud projects describe PROJECT_ID
Windows (cmd.exe)
gcloud projects describe PROJECT_ID
REST
使用任何要求資料之前,請先修改下列項目的值:
- PROJECT_ID: Google Cloud 專案 ID
HTTP 方法和網址:
GET https://cloudresourcemanager.googleapis.com/v3/projects/PROJECT_ID
JSON 要求內文:
{}
如要傳送要求,請選擇以下其中一個選項:
curl
將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://cloudresourcemanager.googleapis.com/v3/projects/PROJECT_ID"
PowerShell
將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://cloudresourcemanager.googleapis.com/v3/projects/PROJECT_ID" | Select-Object -Expand Content
您應該會收到如下的 JSON 回覆:
{
"projectNumber": "464036093014",
"projectId": "our-project-123",
"lifecycleState": "ACTIVE",
"name": "my project",
"labels": {
"mylabel": "prod"
},
"createTime": "2016-01-07T21:59:43.314Z"
}
可列出資源下的所有專案
如要列出資源的直接子項專案,請使用 v3 projects.list 方法,並在查詢中指定父項資源:
REST
使用任何要求資料之前,請先修改下列項目的值:
- FOLDER_ID: Google Cloud 資料夾 ID
HTTP 方法和網址:
GET https://cloudresourcemanager.googleapis.com/v3/projects
JSON 要求內文:
{
"parent": "folders/662951040570"
}
如要傳送要求,請選擇以下其中一個選項:
curl
將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://cloudresourcemanager.googleapis.com/v3/projects"
PowerShell
將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://cloudresourcemanager.googleapis.com/v3/projects" | Select-Object -Expand Content
您應該會收到如下的 JSON 回覆:
{
"projectNumber": "464036093014",
"projectId": "our-project-123",
"lifecycleState": "ACTIVE",
"name": "my project",
"labels": {
"mylabel": "prod"
},
"createTime": "2016-01-07T21:59:43.314Z"
}
搜尋專案
如要尋找符合特定條件的專案,例如顯示名稱前置字串或特定生命週期狀態,請使用 projects.search 方法或 gcloud alpha resource-manager projects search 指令。
搜尋範圍包括您擁有 resourcemanager.projects.get 權限的所有專案。
查詢語法
您可以使用 --query 標記 (gcloud) 或 query 參數 (API) 篩選搜尋結果。
常見的搜尋篩選器包括:
displayName:專案的易記名稱。state:專案的生命週期狀態,例如ACTIVE或DELETE_REQUESTEDparent.type和parent.id:依特定機構或資料夾篩選結果。
權限
如果您在查詢中指定父項 (例如 parent:folders/123),則必須擁有該父項的 resourcemanager.projects.list 權限。如果您擁有此權限,則在套用其餘的篩選條件後,會傳回父項下的所有專案。
如果缺少此權限,系統會套用其餘篩選條件,並傳回您具有 resourcemanager.projects.get 權限的所有專案。
如未指定上層,結果會包含您具有 resourcemanager.projects.get 權限的所有專案。
gcloud
使用下列任何指令資料之前,請先替換以下項目:
- PROJECT_ID: Google Cloud 專案 ID
執行下列指令:
Linux、macOS 或 Cloud Shell
gcloud alpha projects search --query="name:z*"
Windows (PowerShell)
gcloud alpha projects search --query="name:z*"
Windows (cmd.exe)
gcloud alpha projects search --query="name:z*"
您應該會收到類似以下的回應:
The response contains the projects with names starting with 'z'
REST
HTTP 方法和網址:
GET https://cloudresourcemanager.googleapis.com/v3/projects:search?query=displayName%3ATokyo%2BRain
JSON 要求內文:
{}
如要傳送要求,請選擇以下其中一個選項:
curl
將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://cloudresourcemanager.googleapis.com/v3/projects:search?query=displayName%3ATokyo%2BRain"
PowerShell
將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://cloudresourcemanager.googleapis.com/v3/projects:search?query=displayName%3ATokyo%2BRain" | Select-Object -Expand Content
您應該會收到如下的 JSON 回覆:
{
"projects": [
{
"name": "projects/951040570662",
"parent": "folders/662951040570",
"projectId": "tokyo-rain-123",
"state": "ACTIVE",
"displayName": "Tokyo Rain",
"createTime": "2013-11-13T20:31:53.308Z",
"updateTime": "2013-11-13T20:31:53.308Z",
"etag": "BwWUlZ6XEfY="
}
]
}
更新專案
您可以變更專案名稱、標籤和代碼。如要進一步瞭解如何更新專案,請參閱專案 API 參考資料頁面。如要更新專案,請使用下列其中一種做法:
控制台
如要 Google Cloud 透過控制台更新專案的名稱或標籤,請執行下列操作:
- 前往 Google Cloud 控制台的「IAM & Admin Settings」(IAM 與管理設定) 頁面。
前往「IAM & Admin Settings」(IAM 與管理員設定)
其餘步驟會顯示在 Google Cloud 控制台。
- 按一下畫面頂端的專案選取下拉式清單。
- 在顯示的「Select from」(可用的選項) 視窗中,點選機構下拉式清單,然後選取您的機構。如果您是免費試用的使用者,請跳過此步驟,因為畫面不會顯示機構清單。
- 從顯示的清單中選取您的專案。
- 如要變更專案名稱,編輯「Project name」(專案名稱),然後按一下「Save」(儲存)。
- 如要新增或編輯標記,請前往頁面上的「標記」部分,然後按一下「管理標記」。如要瞭解如何新增或更新標記鍵和值,請參閱「建立及管理標記」。
- 如要變更標籤,請按一下左側導覽面板中的「Labels」(標籤)。
進一步瞭解如何使用標籤。
gcloud
-
在 Google Cloud 控制台中啟用 Cloud Shell。
Google Cloud 主控台底部會開啟一個 Cloud Shell 工作階段,並顯示指令列提示。Cloud Shell 是已安裝 Google Cloud CLI 的殼層環境,並已針對您目前的專案設定好相關值。工作階段可能要幾秒鐘的時間才能初始化。
如要更新專案的名稱或標籤,請使用
gcloud alpha projects update指令:gcloud alpha projects update PROJECT_ID \ --name=NAME \ --update-labels=KEY=VALUE, ...
更改下列內容:
PROJECT_ID:要更新的專案 ID。NAME:要指派給專案的新名稱。KEY:要更新的標籤鍵。VALUE:要更新的標籤值。
如要進一步瞭解這個指令,以及可搭配使用的其他標記,請參閱 Google Cloud CLI SDK。
REST
如要更新專案,請按照下列步驟操作:
使用
projects.get方法取得project物件。修改要更新的欄位。
呼叫
projects.patch方法。
以下範例會將專案的顯示名稱更新為 myproject,並將 color 標籤設為 red:
要求:
PATCH https://cloudresourcemanager.googleapis.com/v3/projects/PROJECT_NUMBER?updateMask=displayName,labels
其中 PROJECT_NUMBER 是要更新的專案數字 ID。
JSON 要求主體:
{
"displayName": "myproject",
"labels": {
"color": "red"
}
}
回應:
{
"projects": [
{
"name": "projects/951054970012",
"parent": "folders/662951040570",
"projectId": "Osaka-rain-234",
"state": "ACTIVE",
"displayName": "myproject",
"createTime": "2013-11-13T20:31:53.308Z",
"updateTime": "2013-11-13T20:35:42.308Z",
"etag": "BwWUlZ6XEfY=",
"labels": {
"color": "red"
}
}
]
}
後續步驟
- 瞭解如何在資源階層中移動專案。
- 瞭解如何將專案從一個機構資源遷移至另一個機構資源。