本頁說明如何在 Cloud Firestore 中啟用及設定私人 Google 存取權。
關於 Cloud Firestore 中的私人 Google 存取權
根據預設,如果 Compute Engine VM 的網路介面沒有獲派外部 IP 位址,就只能將封包傳送至其他內部 IP 位址目的地。如要允許這些 VM 連線至 Cloud Firestore 服務,請在 VM 網路介面使用的子網路上啟用私人 Google 存取權。
適用的服務和通訊協定
本指南的操作說明僅適用於 Cloud Firestore。
Cloud Firestore 和其 IP 範圍使用的預設和 VIP 網域,僅支援通訊埠 443 上的 MongoDB 通訊協定。系統不支援其他通訊協定。
網路需求
如果符合下列所有條件,VM 介面就能透過內部 Google 網路使用私人 Google 存取權連線至 Google API 和服務:
VM 介面連線至啟用私人 Google 存取權的子網路。
VM 介面未獲派外部 IP 位址。
從 VM 傳送的封包來源 IP 位址會與下列其中一個 IP 位址相符。
- VM 介面的主要內部 IPv4 位址
- 別名 IP 範圍中的內部 IPv4 位址
如果 VM 的網路介面已指派外部 IPv4 位址,就不需要私人 Google 存取權,即可連線至 Google API 和服務。不過,虛擬私有雲網路必須符合存取 Google API 和服務的規定。
IAM 權限
具有網路管理員角色的專案擁有者、編輯者和 IAM 主體可建立或更新子網路及指派 IP 位址。
如要進一步瞭解角色,請參閱身分與存取權管理角色說明文件。
記錄
Cloud Logging 會擷取啟用私人 Google 存取權的子網路中,從 VM 執行個體發出的所有 API 要求。記錄項目會將 API 要求的來源識別為呼叫執行個體的內部 IP 位址。
您可以將每日使用情況和每月總計報表設為傳送到 Cloud Storage bucket,詳情請參閱「查看用量報表」頁面。
設定摘要
下表摘要說明在 Cloud Firestore 中設定 Private Google Access 的不同方式。如需更詳細的指示,請參閱「網路設定」。
| 網域選項 | IP 範圍 | DNS 設定 | 轉送設定 | 防火牆設定 |
|---|---|---|---|---|
|
預設網域 (
如果您未設定 |
136.124.0.0/23
|
您是透過公開 IP 位址存取 Cloud Firestore 服務,因此不需要進行特殊的 DNS 設定。 |
確認虛擬私有雲網路可將流量轉送至 Cloud Firestore 服務使用的 IP 位址範圍。 |
檢查防火牆規則是否允許輸出至 如果沒有優先順序更高的規則會封鎖這類流量,預設允許輸出防火牆規則就會允許這類流量。 |
|
使用 |
199.36.153.2/31 |
設定 DNS 記錄,將要求傳送至 199.36.153.2/31 IP 位址範圍。 |
確認虛擬私有雲網路有前往 199.36.153.2/31 IP 位址範圍的路徑。 |
檢查防火牆規則是否允許輸出至 199.36.153.2/31 IP 位址範圍。 |
網路設定
本節說明如何設定網路,透過 Private Google Access 存取 Cloud Firestore。
DNS 設定
與其他 Google API 不同,Cloud Firestore API 使用不同的網域名稱和 IP 位址進行私人 Google 存取:
restricted.firestore.goog可存取 Cloud Firestore API。IP 位址:
199.36.153.2和199.36.153.3。由於 Cloud Firestore 符合 VPC Service Controls 規定,因此您可以在 VPC Service Controls 情境中使用這個網域。
如要為 Cloud Firestore 建立 DNS 區域和記錄,請按照下列步驟操作:
為
firestore.goog建立私人 DNS 區域。建議您為此建立 Cloud DNS 私人區域。
在
firestore.goog區域中,建立下列記錄:restricted.firestore.goog的A記錄,指向下列 IP 位址:199.36.153.2和199.36.153.3。指向
restricted.firestore.goog的*.firestore.googCNAME記錄。
如要在 Cloud DNS 中建立這些記錄,請參閱「新增記錄」。
轉送設定
虛擬私有雲網路必須具備適當的路徑,且下一個躍點為預設網際網路閘道。Google Cloud 不支援透過其他 VM 執行個體或自訂下一個躍點,將流量轉送至 Google API 和服務。雖名為「預設網際網路閘道」,但從虛擬私有雲網路中的 VM 傳送至 Google API 和服務的封包,仍會保留在 Google 網路中。
如果選取預設網域選項,VM 執行個體會使用下列公開 IP 位址範圍連線至 Cloud Firestore 服務:
136.124.0.0/23。這些 IP 位址可公開路由傳送,但從虛擬私有雲網路中的 VM 到這些位址的路徑,仍會保留在 Google 網路中。Google 不會在網際網路上發布任何
restricted.firestore.goog網域使用的 IP 位址路徑。因此,只有虛擬私有雲網路中的 VM,或連線至虛擬私有雲網路的內部部署系統,才能存取這個網域。
如果虛擬私有雲網路包含下一個躍點為預設網際網路閘道的預設路由,您可以使用該路由存取 Cloud Firestore 服務,不必建立自訂路由。詳情請參閱使用預設路徑進行轉送。
如果您已將預設路徑 (目的地 0.0.0.0/0 或 ::0/0) 替換為下一個躍點「不是」預設網際網路閘道的自訂路徑,則可改用自訂路徑,滿足 Cloud Firestore 服務的轉送需求。
使用預設路徑進行轉送
每個虛擬私有雲網路在建立時,都會包含 IPv4 預設路徑 (0.0.0.0/0)。
預設路徑會提供前往下列目的地 IP 位址的路徑:
- 預設網域 (
firestore.goog):136.124.0.0/23 restricted.firestore.goog:199.36.153.2/31
如需 Google Cloud 控制台和 Google Cloud CLI 指示,瞭解如何檢查特定網路中的預設路徑設定,請參閱「設定私人 Google 存取權」。
使用自訂路徑進行轉送
除了預設路徑,您也可以使用自訂靜態路徑,每個路徑都有更明確的目的地,且每個路徑都使用預設網際網路閘道下一個躍點。路由的目的地 IP 位址取決於您選擇的網域:
- 預設網域 (
firestore.goog):136.124.0.0/23 restricted.firestore.goog:199.36.153.2/31
如需 Google Cloud 控制台和 Google Cloud CLI 指示,瞭解如何檢查特定網路中自訂路徑的設定,請參閱「設定私人 Google 存取權」。
防火牆設定
虛擬私有雲網路的防火牆設定必須允許 VM 存取 Cloud Firestore 服務使用的 IP 位址。隱含的 allow egress 規則符合這項規定。
在某些防火牆設定中,您需要建立特定的允許輸出規則。舉例來說,假設您已建立拒絕輸出規則,封鎖所有目的地的流量 (IPv4 為 0.0.0.0)。在這種情況下,您必須為所選網域使用的每個 IP 位址範圍,建立優先順序高於拒絕輸出規則的允許輸出防火牆規則:
- 預設網域 (
firestore.goog:136.124.0.0/23 restricted.firestore.goog:199.36.153.2/31
如要建立防火牆規則,請參閱「建立防火牆規則」。定義各項輸出允許規則的目標時,您可以限制防火牆規則適用的 VM。
私人 Google 存取權設定
在虛擬私有雲網路中符合網路需求後,即可啟用私人 Google 存取權。如需 Google Cloud 控制台和 Google Cloud CLI 指令,請按照「啟用私人 Google 存取權」一文中的步驟操作。