使用 AlloyDB Auth Proxy 的最佳做法

本頁列出使用 AlloyDB Auth Proxy 的幾項最佳做法。

將 Auth Proxy 用戶端維持在最新狀態

Google 每月都會發布新版 Auth Proxy。如要查看目前版本,請前往 AlloyDB Auth Proxy GitHub 版本頁面

使用自動化功能更新 Auth Proxy 版本,並在非正式環境中測試新版本,然後再將變更推送至正式環境。

以持續性服務或 Sidecar 形式執行 Auth Proxy 用戶端

在實際工作環境中,您應將 Auth Proxy 用戶端做為持續性服務或補充資訊執行。

如果停止 Auth Proxy 用戶端程序,系統會捨棄所有現有連線,且應用程式無法再透過 AlloyDB Auth Proxy 建立與 AlloyDB 執行個體的連線。為避免發生這種情況,請將 Auth Proxy 用戶端做為持續性服務執行,這樣一來,如果 Auth Proxy 用戶端因任何原因結束,系統就會自動重新啟動。

根據您執行用戶端的位置,使用下列選項:

  • 如果 Auth Proxy 用戶端是在 Linux VM 上執行,請使用 systemdupstartsupervisor 等服務。
  • 如果是 Windows 工作負載,請以 Windows 服務的形式執行驗證 Proxy 用戶端。詳情請參閱《Windows 服務指南》。
  • 如果是 Kubernetes 設定,請以補充 Proxy 形式執行 Auth Proxy 用戶端。

在與工作負載相同的機器上執行 Auth Proxy 用戶端

Auth Proxy 用戶端會假設它與工作負載在同一部電腦上執行。 所有傳送至 Auth Proxy 的用戶端流量都會未經加密。從 Auth Proxy 到 AlloyDB 的流量會使用 mTLS 加密。

請務必將 Auth Proxy 的所有用戶端都放在同一部電腦上,以免未加密的流量離開電腦。AlloyDB Auth Proxy 應與要存取 AlloyDB 執行個體的用戶端位於同一位置。

為每個工作負載使用不同的服務帳戶

AlloyDB Auth Proxy 會使用環境的 IAM 主體,建立通往 AlloyDB 執行個體的安全通道。為遵循最低權限原則,每個工作負載 (例如網頁應用程式或後端資料處理應用程式) 都必須使用不同的服務帳戶。使用不同的服務帳戶可確保每個工作負載的權限都能個別管理 (或撤銷)。

請勿將 AlloyDB Auth Proxy 部署為瓶頸

您可能會想在共用 VM 上部署 AlloyDB Auth Proxy,並用來將多個工作負載的所有流量,都轉送至 AlloyDB 執行個體。不過,這種做法不安全,而且會造成單一故障點。

由於多個用戶端最終會使用與 Auth Proxy 相同的 IAM 主體,因此很難識別實際存取 AlloyDB 執行個體的工作負載,導致這種做法不安全。

這種做法會造成單點故障,因為如果 AlloyDB Auth Proxy 流量突然暴增而過載,所有用戶端連線都會受到負面影響。

請改為在需要安全連線的每部機器上,以持續性服務的補充形式部署 Auth Proxy 用戶端。

減少正式版部署的 AlloyDB Auth Proxy 記錄輸出

如要限制 AlloyDB Auth Proxy 記錄的大小,請在啟動 AlloyDB Auth Proxy 時設定 --verbose=false 選項。請注意,使用這個選項會降低 AlloyDB Auth Proxy 輸出內容的效力,因此無法有效診斷連線問題。

閱讀 AlloyDB Auth Proxy 說明訊息

AlloyDB Auth Proxy 包含許多額外功能,並提供詳細的說明訊息。執行 ./alloydb-auth-proxy --help 指令,探索其他設定選項。

在 GitHub 上與開發團隊互動

如果您認為自己發現錯誤或有功能要求,可以在 AlloyDB Auth Proxy 的 GitHub 存放區與開發團隊互動。