存取資料庫

這個頁面說明如何從不同的平台存取 Firestore (Datastore 模式) 資料庫。

事前準備

本文假設您已建立 Datastore 模式資料庫。如果尚未建立資料庫,請按照 Datastore 模式的 Firestore 快速入門導覽課程中的操作說明進行。

從 App Engine 存取資料庫

如要開始使用 Datastore 模式和 App Engine,請參閱下列其中一個特定語言資訊頁面:

App Engine 標準環境 App Engine 彈性環境

App Engine 的 Datastore 模式權限

App Engine 應用程式預設可以存取屬於同一個專案的 Datastore 模式資料庫。每個 App Engine 應用程式分別使用一個 App Engine 預設服務帳戶管理 Firestore 等 Google Cloud服務的存取權。根據預設,App Engine 預設服務帳戶的身分與存取權管理角色是「專案編輯者」,具備完整的 Datastore 模式讀取和寫入存取權。

您可以修改 App Engine 預設服務帳戶的 IAM 權限,但除非指派具備必要 Firestore 權限的 IAM 角色,否則應用程式可能會無法存取 Firestore。舉例來說, Datastore 擁有者 Datastore 使用者 IAM 角色就能授予讀取及寫入 Firestore (Datastore 模式) 的存取權。

如果停用或刪除 App Engine 預設服務帳戶,App Engine 應用程式將無法存取 Datastore 模式資料庫。如果您停用了 App Engine 服務帳戶,可以重新啟用,請參閱「啟用服務帳戶」。如果您在過去 30 天內刪除了 App Engine 服務帳戶,可以還原該帳戶,詳情請參閱「取消刪除服務帳戶」。

從 Compute Engine 執行個體存取資料庫

本節示範如何自新專案或現有專案中的 Compute Engine VM 執行個體啟動及存取 Datastore 模式資料庫。

Compute Engine 的 Datastore 模式權限

Compute Engine 應用程式預設可以存取屬於同一個專案的 Datastore 模式資料庫。每個 Compute Engine 應用程式分別使用一個 Compute Engine 預設服務帳戶管理 Firestore 等 Google Cloud 服務的存取權。根據預設,Compute Engine 預設服務帳戶的身分與存取權管理角色是「專案編輯者」,具備完整的 Datastore 模式讀取和寫入存取權。

如要從 Compute Engine 執行個體存取資料庫,請完成下列步驟:

  1. 為您的專案啟用 Google Compute Engine API。
    啟用 Compute Engine API
  2. Make sure that billing is enabled for your Google Cloud project.

  3. 建立 Compute Engine 執行個體。

控制台

  1. 前往 Google Cloud 控制台的「VM Instances」(VM 執行個體) 頁面。
  2. 按一下 [Create instance] (建立執行個體) 按鈕。
  3. 在「Identity and API access」(身分及 API 存取權) 區段中設定 [Access scopes] (存取範圍),將存取權提供給 Datastore。按一下「允許所有 Cloud API 的完整存取權」,將存取權授予所有 Google Cloud API,或者按一下「針對各個 API 設定存取權」,再依序按下「Datastore」及「啟用」,將存取權授予 Datastore。
  4. 按一下「建立」按鈕,建立 VM 執行個體。
  5. 確認您的執行個體正在執行
  6. 如要使用這個新的 Compute Engine VM 執行個體,請使用瀏覽器與這個執行個體連線

gcloud

  1. 如果您尚未安裝 Google Cloud CLI 並設定 gcloud compute,請先完成這些步驟。
  2. 新增一個 Compute Engine VM 執行個體並加以啟動,接著按照 Compute Engine 說明文件中的啟動執行個體操作說明操作。指定專案 ID、VM 執行個體名稱,以及 cloud-platformdatastore 範圍,如下列範例所示。

    export PROJECT_ID=[YOUR_PROJECT_ID]
    export INSTANCE_NAME=[YOUR_INSTANCE_NAME]
    gcloud compute instances create $INSTANCE_NAME --project $PROJECT_ID --scopes datastore
    

    [YOUR_PROJECT_ID] 替換為您先前建立的專案 ID,並將 [YOUR_INSTANCE_NAME] 替換為您要用於 VM 執行個體的名稱。

  3. 確認您的執行個體正在執行

  4. 如要使用這個新的 VM 執行個體,請連線至 VM。

到此步驟為止,您已經設定好專案的所有服務及授權,可以開始編寫程式碼試著使用 API

從其他平台存取資料庫

本節示範如何從在 Google Cloud外部平台上執行的外部應用程式存取您的 Datastore 模式資料庫。

首先,請建立服務帳戶:

  1. 前往 Google Cloud 控制台的「Create service account」(建立服務帳戶) 頁面。

    前往「建立服務帳戶」

  2. 選取專案。

  3. 在「Service account name」(服務帳戶名稱) 欄位中輸入名稱。Google Cloud 控制台會根據這個名稱填入「服務帳戶 ID」欄位。

  4. 選用:在「服務帳戶說明」欄位中輸入說明。

  5. 點選「建立」

  6. 按一下「選取角色」欄位。

    在「所有角色」下方,選取可為資料庫授予存取權的角色,例如「Datastore」 >「Cloud Datastore 使用者」

  7. 按一下「繼續」

  8. 按一下「Done」(完成),即完成建立服務帳戶。

    請勿關閉瀏覽器視窗。您會在下一個程序中使用此項目。

然後建立服務帳戶金鑰:

  1. 在 Google Cloud 控制台中,按一下您建立的服務帳戶電子郵件地址。
  2. 點選「金鑰」
  3. 依序點選「Add key」(新增金鑰) 和「Create new key」(建立新的金鑰)
  4. 按一下「建立」,系統會將 JSON 金鑰檔案下載至您的電腦。
  5. 按一下 [關閉]

請使用這個帳戶來設定應用程式程式碼的憑證,如提供服務帳戶憑證一節中所述。

配額與計費

定價與配額內容所述,您有一定的免費配額可以使用。也就是說,您不需要啟用計費功能就能開始使用 Firestore (Datastore 模式),也可以在免費配額限制內使用。不過,如需比免費配額更多的資源,就必須啟用計費功能。

後續步驟

如要啟用計費功能,請參閱「啟用專案的計費功能」。