在 AlloyDB 執行個體上設定 SSL 強制模式

如要保護用戶端連線,並控管是否允許未加密的流量或用戶端憑證,您可以設定 AlloyDB for PostgreSQL 執行個體的 SSL 強制執行模式。

根據預設,AlloyDB 執行個體只接受使用 SSL 的連線。

AlloyDB 會使用 SSL,建立與 AlloyDB 執行個體的安全、經過驗證且加密的連線。此外,可設定的 SSL 強制執行模式可確保執行個體的所有資料庫連線都使用 SSL 加密。

本文說明如何在現有執行個體上設定 SSL 強制執行模式。如要瞭解如何在建立執行個體時設定 SSL 強制執行模式,請參閱「建立主要執行個體」。

事前準備

  • 您使用的 Google Cloud 專案必須啟用 AlloyDB 存取權。
  • 您必須在使用的 Google Cloud 專案中具備下列其中一個 IAM 角色:
    • roles/alloydb.admin (AlloyDB 管理員預先定義的 IAM 角色)
    • roles/owner (擁有者基本 IAM 角色)
    • roles/editor (編輯者基本 IAM 角色)

    如果您不具備上述任一角色,請向組織管理員要求存取權。

設定執行個體的 SSL 強制執行模式

控制台

  1. 前往「Clusters」(叢集) 頁面。

    前往「Clusters」(叢集) 頁面

  2. 在「Resource name」(資源名稱) 欄中,按一下叢集。
  3. 在「總覽」頁面,前往「叢集內的執行個體」部分,然後點選「編輯主要節點」。
  4. 在「編輯主要執行個體」窗格中,展開「進階設定選項」。
  5. 啟用「僅允許 SSL 連線」。這個選項預設為啟用。
  6. 按一下「更新執行個體」。

gcloud

如要使用 gcloud CLI,您可以安裝並初始化 Google Cloud CLI,也可以使用 Cloud Shell。

使用 gcloud alloydb instances update 指令搭配 --ssl-mode=ENCRYPTED_ONLY 引數,只允許加密的資料庫連線至 AlloyDB 執行個體。

gcloud alloydb instances update INSTANCE_ID \
    --region=REGION_ID \
    --cluster=CLUSTER_ID \
    --project=PROJECT_ID \
    --ssl-mode=ENCRYPTED_ONLY

更改下列內容:

  • INSTANCE_ID:要更新的執行個體 ID。
  • REGION_ID:執行個體所在的區域。
  • CLUSTER_ID:執行個體所在的叢集 ID。
  • PROJECT_ID:叢集所在專案的 ID。

如要允許未加密的資料庫連線至執行個體,請使用 gcloud alloydb instances update 指令,並加上 --ssl-mode=ALLOW_UNENCRYPTED_AND_ENCRYPTED 引數。

gcloud alloydb instances update INSTANCE_ID \
    --region=REGION_ID \
    --cluster=CLUSTER_ID \
    --project=PROJECT_ID \
    --ssl-mode=ALLOW_UNENCRYPTED_AND_ENCRYPTED

如果指令傳回的錯誤訊息包含 invalid cluster state MAINTENANCE,表示叢集正在進行例行維護。這會暫時禁止重新設定執行個體。請在叢集恢復 READY 狀態後,再次執行指令。如要查看叢集狀態,請參閱「查看叢集詳細資料」。