本頁面概述 VPC Service Controls,以及如何將其與備份和災難復原整合,確保資料和資源安全無虞。
關於 VPC Service Controls
VPC Service Controls 有助於降低從備份和災難復原設備管理控制台竊取資料的風險。您可以使用 VPC Service Controls 建立服務安全範圍,保護各種服務的資源和資料。如果備份和災難復原服務受到安全防護範圍保護,範圍外的資源就無法與設備管理控制台通訊。不過,您可以允許服務安全防護範圍外的資源存取管理控制台和 API。詳情請參閱「允許存取 service perimeter 外的受保護資源」。
如要大致瞭解 VPC Service Controls、其安全性優點,以及 gcloud CLI 產品的相關功能,請參閱「VPC Service Controls 總覽」。
事前準備
開始為備份和災難復原服務設定 VPC Service Controls 前,請先完成下列步驟:
- 在 Google Cloud 控制台的「專案選取器」頁面中,選取「建立 gcloud CLI 專案」。
- 請確認您已為 Google Cloud 專案啟用計費功能。 瞭解如何檢查專案是否已啟用計費功能。
- 按照「啟用 API」一節中的操作說明,為專案啟用 Access Context Manager API。
設定備份保存庫的存取層級和方向政策
如果備份/還原裝置和備份儲存空間位於同一個 VPC Service Controls 範圍,則不需要設定存取層級和方向政策。否則,請根據安全性周邊設定需求,從下列設定情境中選擇一項。
- 如果備份/復原設備和備份儲存空間位於不同周邊範圍,但存在於周邊範圍內:
- 在備份儲存空間資源所在的周邊範圍中,設定 Ingress 例外狀況。
在 Ingress 規則中新增
backupdr.googleapis.com和storage.googleapis.com。來源可以是IP 位址、網路,或是備份/復原設備所在的專案。 - 在備份/復原設備所在的周邊設定輸出例外狀況。
將
backupdr.googleapis.com和storage.googleapis.com新增至輸出規則。目標是備份保存庫資源所在的專案。您可以將該屬性與備份/復原裝置的 IP 位址或任何其他屬性合併。
- 在備份儲存空間資源所在的周邊範圍中,設定 Ingress 例外狀況。
在 Ingress 規則中新增
- 如果只有 backup vault 資源位於 perimeter 內:在 backup vault 資源所在的 perimeter 中設定 Ingress 例外狀況。將
backupdr.googleapis.com和storage.googleapis.com新增至 Ingress 規則。來源可以是備份/復原設備所在的 IP 位址、網路或專案。 - 如果 perimeter 中只有備份/復原設備:
在備份/復原設備所在的 perimeter 中設定輸出例外狀況。
將
backupdr.googleapis.com和storage.googleapis.com新增至輸出規則。目標是備份保存庫資源所在的專案。您可以將該屬性與備份/復原設備的 IP 位址或其他任何屬性合併。
為 Compute Engine 設定存取層級和方向政策
如果管理員專案和工作負載專案位於相同的 VPC Service Controls 範圍,則不需要設定存取層級和方向政策。 否則,請根據安全性周邊設定需求,從下列設定情境中選擇一項。
- 如果管理員專案和工作負載專案位於不同的服務範圍:
- 管理員專案需要為備份保存庫服務代理,在工作負載專案中新增
backupdr.googleapis.com和compute.googleapis.com的輸出規則。 - 工作負載專案需要新增 ingress 規則,允許備份保存庫服務代理發出呼叫,並為備份保存庫服務代理新增 egress 規則,以便在
backupdr.googleapis.com和compute.googleapis.com中存取管理員專案。
- 管理員專案需要為備份保存庫服務代理,在工作負載專案中新增
- 如果只有管理員專案有 service perimeter:
管理員專案需要為備份儲存空間服務代理程式,在工作負載專案中新增
backupdr.googleapis.com和compute.googleapis.com的輸出規則。 - 如果只有工作負載專案有服務範圍:
工作負載專案需要新增輸入規則,允許備份儲存庫服務代理發出呼叫,並新增輸出規則,允許備份儲存庫服務代理對管理員專案執行
backupdr.googleapis.com和compute.googleapis.com。
為 Cloud SQL 和 AlloyDB 設定存取層級和方向政策
管理員專案和工作負載專案都應位於相同的 VPC Service Controls 範圍內。
為備份和災難復原服務設定 VPC Service Controls
請按照下列步驟,為備份和災難復原服務設定 VPC Service Controls:
以下各節將詳細說明這些步驟。
建立 service perimeter
請按照下列操作說明建立服務範圍:
- 在 Google Cloud 控制台的專案選取器頁面中,選取要讓虛擬私有雲服務範圍保護的備份和災難復原專案。
- 按照「建立服務範圍」一文中的說明建立服務範圍。
在「受限制的服務」區段中,將下列 API 新增至服務範圍:
- 必要:備份和災難復原 API -
backupdr.googleapis.com - 選用:Compute Engine API -
compute.googleapis.com - 選用:Resource Manager API -
cloudresourcemanager.googleapis.com - 選用:Workflows API -
workflows.googleapis.com - 選用:Cloud Key Management Service API -
cloudkms.googleapis.com - 選用:Identity and Access Management API -
iam.googleapis.com - 選用:Cloud Logging API -
logging.googleapis.com - 選用:Cloud Storage API -
storage.googleapis.com - 選用:Cloud SQL Admin API -
sqladmin.googleapis.com - 選用:AlloyDB -
alloydb.googleapis.com
- 必要:備份和災難復原 API -
如果您使用 Shared VPC,請在「新增資源」部分新增主專案和服務專案。
設定安全週邊後,根據預設,只有在安全週邊內才能存取備份和災難復原設備管理控制台和 API。
如果備份/復原設備向 service perimeter 外部發出 Cloud API 要求 (例如將 Compute Engine 執行個體復原至不在相同 perimeter 內的專案或虛擬私有雲網路),您可能會看到 VPC Service Controls 存取違規事項。如要允許 API 要求,您必須在備份/還原裝置服務帳戶的 VPC Service Controls 服務範圍中,建立適當的輸入和輸出規則。
設定連線至 Google API 和服務
在 VPC Service Controls 設定中,如要控管網路流量,請透過 restricted.googleapis.com 網域設定 Google API 和服務的存取權。這個網域會封鎖對 VPC Service Controls 不支援的 Google API 和服務的存取權。詳情請參閱網域選項。
如果您未設定 Google API 和服務的 DNS 規則,系統會使用預設網域的網域選項解析這些規則。
備份和災難復原服務會使用下列網域:
*.backupdr.cloud.google.com用於存取設備管理控制台。*.googleapis.com用於存取其他 Google 服務。
在「DNS 記錄」部分,設定連線至下列 restricted.googleapis.com 端點。
| 網域 | DNS 名稱 | CNAME 記錄 | A 記錄 |
|---|---|---|---|
*.googleapis.com |
googleapis.com. |
DNS 名稱:*.googleapis.com. |
資源記錄類型:A |
資源記錄類型:CNAME |
IPv4 位址: | ||
標準名稱:googleapis.com. |
199.36.153.4, |
||
199.36.153.5, |
|||
199.36.153.6, |
|||
199.36.153.7 |
|||
*.backupdr.cloud.google.com |
backupdr.cloud.google.com. |
DNS 名稱:*.backupdr.cloud.google.com. |
資源記錄類型:A |
資源記錄類型:CNAME |
IPv4 位址: | ||
標準名稱:backupdr.cloud.google.com. |
199.36.153.4, |
||
199.36.153.5, |
|||
199.36.153.6, |
|||
199.36.153.7 |
|||
*.backupdr.googleusercontent.com |
backupdr.googleusercontent.com |
DNS 名稱:*.backupdr.googleusercontent.com. |
資源記錄類型:A |
資源記錄類型:CNAME |
IPv4 位址: | ||
標準名稱:backupdr.googleusercontent.com. |
199.36.153.4, |
||
199.36.153.5, |
|||
199.36.153.6, |
|||
199.36.153.7 |
建立 DNS 記錄
請按照下列操作說明建立 DNS 記錄:
前往 Google Cloud 控制台的「Create a DNS zone」(建立 DNS 區域) 頁面。
在「Zone type」(區域類型) 中,選取「Private」(私人)。
在「Zone name」(區域名稱) 欄位,輸入名稱。例如:
backup-dr-new-zone。在「DNS name」(DNS 名稱) 欄位中,使用您擁有的網域名稱輸入區域名稱,例如
backupdr.cloud.google.com。新增說明 (如有需要)。
在「Options」(選項) 下方選取「Default (private)」(預設 (私人))。
點選「建立」。
在「Zone details」(區域詳細資料) 頁面中,按一下「Add Standard」(新增標準)。
在「建立記錄集」頁面中,按照下列步驟新增 CNAME 記錄的記錄集:
- 在「DNS Name」(DNS 名稱) 欄位中輸入
*.backupdr.cloud.google.com。 - 在「資源記錄類型」中選取「CNAME」。
- 在「Canonical name」(正式名稱) 欄位中輸入
backupdr.cloud.google.com。 - 點選「建立」。
- 在「DNS Name」(DNS 名稱) 欄位中輸入
在「Zone details」(區域詳細資料) 頁面中,按一下「Add Standard」(新增標準),然後按照下列步驟新增含有 IP 位址的記錄集:
- 在「DNS Name」(DNS 名稱) 欄位中輸入
*.backupdr.cloud.google.com。 - 選取「A」做為「Resource record type」(資源記錄類型)。
- 在「IPv4 addresses」(IPv4 位址) 欄位中,輸入 199.36.153.4、199.36.153.5、199.36.153.6、199.36.153.7。
- 點選「建立」。
- 在「DNS Name」(DNS 名稱) 欄位中輸入
詳情請參閱「設定連至 Google API 和服務的私人連線」。
疑難排解
如果在為備份和災難復原設定 VPC Service Controls 時遇到任何問題,請參閱 VPC Service Controls 疑難排解一節。
限制
如果您使用 gcloud 指令從服務供應商專案中移除網際網路預設路徑:gcloud services vpc-peerings enable-vpc-service-controls,則可能無法存取或建立設備管理控制台。如果遇到這個問題,請與 Google Cloud Customer Care 聯絡。
掛接 Compute Engine 備份映像檔前,請將服務專案和主專案新增至相同 perimeter。否則可能不會看到可用的網路。