本頁說明如何使用 Identity and Access Management (IAM) 管理 AlloyDB 資料庫的存取權。
IAM 驗證概念
使用 IAM 驗證時,您無法將 AlloyDB 執行個體的存取權直接授予使用者,而是將不同權限的角色授予主體。詳情請參閱 IAM 總覽。
如果管理員要求使用者透過 IAM 資料庫驗證登入,即可使用 IAM 政策集中管理執行個體的存取權控管。
IAM 政策涉及下列實體:
原則。在 AlloyDB 中,您可以使用使用者帳戶或服務帳戶 (適用於應用程式)。詳情請參閱「主體」。
角色:如要使用 IAM 資料庫驗證,主體必須具備 alloydb.instances.login 權限。這項權限包含在 AlloyDB 用戶端角色 (
roles/alloydb.client) 中。如要取得這項權限,請將使用者、服務帳戶或群組繫結至預先定義的角色,或包含這項權限的自訂角色。詳情請參閱「權限與角色」。資源。主體存取的資源是 AlloyDB 執行個體。根據預設,系統會在專案層級套用 IAM 政策繫結,因此主體會取得專案中所有 AlloyDB 執行個體的角色權限。詳情請參閱「資源」。
比較資料庫驗證選項
請參閱下表,根據您的用途決定最適合的驗證方法。
| 功能 | 內建資料庫驗證 | IAM 資料庫驗證 (個別) |
|---|---|---|
| 驗證方式 | 密碼 | 臨時驗證權杖 |
| 網路流量加密 | 不需要 SSL | 必須符合 SSL 規定 |
| 使用者管理 | 手動 | 透過 IAM 集中管理 |
自動與手動 IAM 資料庫驗證
AlloyDB 提供兩種 IAM 資料庫驗證方法:自動和手動。
自動 IAM 資料庫驗證
自動 IAM 資料庫驗證功能可讓您將要求及管理存取權權杖的工作,交給中介 AlloyDB 連接器,例如 Auth Proxy 或其中一個語言連接器。
使用自動 IAM 資料庫驗證時,應用程式只需要在用戶端的連線要求中傳遞 IAM 資料庫使用者名稱。連接器會代表用戶端提交密碼屬性的存取權杖資訊。
手動 IAM 資料庫驗證
手動 IAM 資料庫驗證需要 IAM 主體在用戶端連線要求中,明確傳遞密碼屬性的存取權杖。主體必須先登入 Google Cloud ,並明確向 IAM 要求存取權權杖。
IAM 條件和稽核記錄
您可以根據各種屬性,透過 IAM 條件授予角色。舉例來說,您可以只允許在特定日期和時間存取,或只允許存取特定名稱的 AlloyDB 資源。
如要保留資料存取記錄 (包括登入記錄),可以使用 Cloud 稽核記錄。Cloud 稽核記錄預設為關閉。您必須啟用資料存取稽核記錄,才能追蹤登入情形。
限制與最佳做法
為確保安全,使用 IAM 資料庫驗證登入時,只能透過 SSL 連線。系統會拒絕未加密的連線。
每個執行個體都有每分鐘登入配額,包括成功和失敗的登入嘗試。超過配額時,暫時無法登入。建議您避免頻繁登入,並使用授權網路限制登入。