Postgresql

如何將 Cloud SQL Postgres 配置為需要 SSL 但不需要客戶端證書?

  • June 27, 2019

有沒有辦法創建一個強制 SSL/TLS的 Cloud SQL Postgres 實例,但不需要使用客戶端證書?在pg_hba.conf中,這將是包含hostssl clientcert=1包含 的行。

我嘗試過Enforcing SSL/TLS ( settings.ipConfiguration.requireSslon the instance, or gcloud sql instances patch [INSTANCE_NAME] --require-ssl) 但是這個選項似乎沒什麼用,因為:

  1. 根據管理您的客戶端證書,您只能為“每個實例創建最多 10 個客戶端證書”。這意味著我們必須在多個使用者或服務之間共享相同的客戶端證書/私鑰,因此我們的員工之間的秘密並不是真正的秘密。
  2. 在呈現客戶端sslkey/ sslcertin之後psql,postgres 仍然要求輸入密碼。這證明 Cloud SQL sslCertsAPI在. 這意味著每個客戶端需要客戶端證書密碼。clientcert=1``certpg_hba.conf

使用以下選項配置時,Cloud SQL 始終需要客戶端 SSL 證書:僅允許 SSL 連接。也無法訪問 pg_hba.conf 文件來將 auth-method 更改為 Cloud SQL 的證書。

作為一種解決方法,您可以使用此 Google Cloud Marketplace 連結在計算引擎上創建 PostrgreSQL,您可以在其中訪問 pg_hba.conf 中的 auth-method

引用自:https://serverfault.com/questions/973055