適用於 PostgreSQL 的 Azure 資料庫是完全受控的資料庫服務,提供內建的高可用性、自動化備份和調整功能。 保護您的 PostgreSQL 資料庫部署,有助於保護敏感資料並符合合規要求。
本文將引導你如何保護你的 適用於 PostgreSQL 的 Azure 資料庫 靈活伺服器部署。
本文中的安全性建議會實作零信任原則:「明確驗證」、「使用最低許可權存取」和「假設違規」。 如需完整的 零信任 指引,請參閱 零信任 指引中心。
網路安全性
網路安全控制能幫助您減少公開暴露,並將 適用於 PostgreSQL 的 Azure 資料庫 靈活伺服器整合進分段虛擬網路架構中。
關閉公共網路存取:當 PostgreSQL 彈性伺服器有私人連線時,封鎖公共連線,防止網路暴露。 欲了解更多資訊,請參閱 適用於 PostgreSQL 的 Azure 資料庫 networking with Private Link。
使用私有端點:透過 Azure Private Link 連接到你的 PostgreSQL 彈性伺服器,讓資料庫流量保持在虛擬網路中的私人 IP 位址上。 欲了解更多資訊,請參閱 適用於 PostgreSQL 的 Azure 資料庫 networking with Private Link。
使用虛擬網路整合:當你需要虛擬網路層級的客戶端隔離及對相依 Azure 服務的外掛連線時,部署帶有私有存取權的 PostgreSQL 彈性伺服器。 欲了解更多資訊,請參閱 PostgreSQL 的 Azure Database 網路與私人存取。
限制公共防火牆存取:若部署需要公開存取,僅允許必須的用戶端 IP 位址,避免使用過長的防火牆規則。 欲了解更多資訊,請參閱適用於 PostgreSQL 的 Azure 資料庫防火牆規則中的公共存取。
檢視公共網路行為:在選擇連接模式前,了解公開存取、防火牆規則及允許的 IP 位址如何影響暴露。 欲了解更多資訊,請參閱 適用於 PostgreSQL 的 Azure 資料庫 的網路概覽,具備公開存取權。
身分識別與存取權管理
身份與存取控制有助於你集中驗證、減少憑證暴露,並在 Azure 管理與 PostgreSQL 資料庫存取中強制執行最低權限。
使用 Microsoft Entra 認證:偏好 Microsoft Entra 認證以優化 PostgreSQL 彈性伺服器,以集中身份控制並減少對本地資料庫密碼的依賴。 欲了解更多資訊,請參閱 Microsoft Entra 與 適用於 PostgreSQL 的 Azure 資料庫 的認證。
管理 Microsoft Entra 原則:指派並審查 Microsoft Entra 管理員、使用者及群組,以支援 PostgreSQL 彈性伺服器,確保資料庫存取權限最低。 欲了解更多資訊,請參閱 Manage Microsoft Entra roles in 適用於 PostgreSQL 的 Azure 資料庫。
使用受管理身份存取應用程式:將 Azure 託管的應用程式驗證至 PostgreSQL 彈性伺服器,使用受管理身份,而非將憑證儲存在應用程式碼或設定中。 欲了解更多資訊,請參閱 適用於 PostgreSQL 的 Azure 資料庫 中的受管理身份。
強制執行 PostgreSQL 管理員的條件存取:對管理 PostgreSQL 彈性伺服器及相關 Azure 資源的身份,套用條件存取政策,如多重驗證及合規裝置要求。 欲了解更多資訊,請參閱《共同條件存取政策:Azure管理需多重身份驗證(MFA)。
使用 SCRAM 進行本地認證:若需要本地 PostgreSQL 使用者,請使用 SCRAM 認證及強密碼實務,以降低密碼外洩風險。 欲了解更多資訊,請參閱 適用於 PostgreSQL 的 Azure 資料庫 中的 SCRAM 認證。
管理本地資料庫角色:使用 PostgreSQL 角色與權限,限制每位使用者對物件與操作的資料庫層級存取。 欲了解更多資訊,請參閱「管理 適用於 PostgreSQL 的 Azure 資料庫 中的使用者」。
實作 Azure 角色基礎存取控制(RBAC):僅將 Azure RBAC 角色指派給需要建立、設定、監控或刪除 PostgreSQL 彈性伺服器資源的身份。 欲了解更多資訊,請參閱 Azure 角色基礎存取控制。
資料保護
適用於 PostgreSQL 的 Azure 資料庫 透過服務管理金鑰加密主要伺服器、副本、點位復原資料及靜態備份。 當您的工作負載需要更強的加密治理或資料使用保護時,請使用以下客戶可配置的控制措施。
驗證 TLS 連線:設定 PostgreSQL 用戶端,使用
sslmode=verify-ca驗證伺服器憑證鏈和主機名稱;若無法使用sslmode=verify-full,則使用verify-full。 欲了解更多資訊,請參閱 適用於 PostgreSQL 的 Azure 資料庫 中的傳輸層安全性。維護受信任的根憑證:將 Azure 根憑證機構放在用戶端信任儲存庫中,避免信任中間憑證或個別伺服器憑證,避免憑證輪替時破壞連線。 欲了解更多資訊,請參閱 適用於 PostgreSQL 的 Azure 資料庫 中的傳輸層安全性。
在支援的情況下要求使用 TLS 1.3:對於支援最新安全通訊協定版本的用戶端,將
ssl_min_protocol_version伺服器參數設為TLSv1.3,且不要設定ssl_max_protocol_version。 欲了解更多資訊,請參閱 適用於 PostgreSQL 的 Azure 資料庫 中的傳輸層安全性。使用客戶管理金鑰進行加密治理:當你需要金鑰生命週期控制或職責分離時,請在 Azure Key Vault 或 Azure Managed HSM 中配置客戶管理金鑰。 僅在符合文件要求的預覽情境中使用跨租戶客戶管理金鑰。 欲了解更多資訊,請參閱 適用於 PostgreSQL 的 Azure 資料庫 中的待用資料加密以及 設定 適用於 PostgreSQL 的 Azure 資料庫 中的資料加密。
設定自動金鑰輪換:如果你使用客戶管理金鑰,請在 Azure Key Vault 或 Azure Managed HSM 中啟用金鑰自動輪換,並設定 PostgreSQL 彈性伺服器使用自動金鑰版本更新。 欲了解更多資訊,請參閱 「配置客戶管理的金鑰加密」。
針對高度敏感的工作負載使用機密運算:當您需要為使用中的資料提供以硬體為基礎的保護時,請在支援的區域中,將 PostgreSQL 彈性伺服器部署到受支援的機密運算 SKU 上。 欲了解更多資訊,請參閱 Azure confidential computing in 適用於 PostgreSQL 的 Azure 資料庫。
對敏感的 PostgreSQL 資料應用資料匿名化:需要資料庫層級資料匿名化工具時使用擴充
anon功能,並在使用前設定必要的共享預載函式庫。 欲了解更多資訊,請參閱 適用於 PostgreSQL 的 Azure 資料庫 靈活伺服器中按名稱列出的擴充功能與模組列表。
記錄和監視
日誌與監控控制功能有助於偵測可疑活動、調查事件,並讓 PostgreSQL 稽核證據持續提供給營運與合規工作流程。
啟用診斷記錄收集:使用診斷設定和稽核類別群組的 Azure 原則 指派,將 PostgreSQL 彈性伺服器稽核記錄傳送至 Log Analytics。 欲了解更多資訊,請參閱 適用於 PostgreSQL 的 Azure 資料庫 的 Azure 原則 內建原則。
啟用稽核日誌:透過擴充
pgaudit功能設定 PostgreSQL 稽核日誌,以便擷取資料庫活動以供調查與合規審查。 欲了解更多資訊,請參閱 適用於 PostgreSQL 的 Azure 資料庫 中的審計日誌。審核 Microsoft Entra 認證事件:監控 Microsoft Entra 在 PostgreSQL 彈性伺服器上的認證活動,以調查基於身份的存取與登入模式。 欲了解更多資訊,請參閱 Audit Microsoft Entra authentication in 適用於 PostgreSQL 的 Azure 資料庫。
啟用 Microsoft Defender 以支援開源關聯式資料庫:使用 適用於雲端的 Microsoft Defender 偵測異常的 PostgreSQL 存取模式、暴力破解嘗試、可疑資料庫活動及 PostgreSQL 專屬設定風險。 欲了解更多資訊,請參閱 適用於雲端的 Microsoft Defender in 適用於 PostgreSQL 的 Azure 資料庫 flexible server 的相關資訊。
合規性和治理
合規與治理控管有助於你套用一致的設定,將 PostgreSQL 部署對應到法規要求,並讓安全擁有權在大規模上可見。
以 Azure 原則 強制執行 PostgreSQL 安全設定:為 PostgreSQL 靈活伺服器控制設定內建政策,例如私有端點、公開存取限制、診斷日誌、TLS、客戶管理金鑰及地理冗餘備份。 欲了解更多資訊,請參閱 適用於 PostgreSQL 的 Azure 資料庫 的 Azure 原則 內建原則。
在處理受規範資料前,先檢視 PostgreSQL 的合規服務:將 適用於 PostgreSQL 的 Azure 資料庫 靈活伺服器映射到相關的合規認證與證明。 欲了解更多資訊,請參閱 適用於 PostgreSQL 的 Azure 資料庫 中的合規。
對生產伺服器套用資源鎖:對生產環境的 PostgreSQL 彈性伺服器及相關資源使用管理鎖定,以減少意外刪除或干擾性組態變更。 欲了解更多資訊,請參閱「用鎖保護你的 Azure 資源」。
為治理用 PostgreSQL 資源標籤:將工作負載、環境、資料分類、擁有者及合規範圍等標籤套用於 PostgreSQL 彈性伺服器及相關資源,讓政策、庫存及成本管理工作流程能識別受保護的資料庫。 欲了解更多資訊,請參見 使用標籤整理您的 Azure 資源。
備份及復原
備份與復原控制能幫助您在意外刪除、損壞或區域中斷後,恢復 PostgreSQL 資料,同時達成工作負載復原目標。
設定自動備份保留:根據您的即時復原需求,將備份保留期設定為 7 至 35 天,並驗證保留期限是否符合工作負載復原需求。 欲了解更多資訊,請參閱 PostgreSQL 的 Azure 資料庫備份與還原。
啟用區域備援備份以支援區域復原:若你的災難復原計畫需要在 Azure 配對區域還原功能,請在建立伺服器時設定地理冗餘備份。 欲了解更多資訊,請參閱 適用於 PostgreSQL 的 Azure 資料庫 中的 Geo-disaster recovery。
為關鍵工作負載配置高可用性:使用高可用性配置以配置備用副本,並減少區域或基礎設施故障期間的停機時間。 欲了解更多資訊,請參閱「配置 適用於 PostgreSQL 的 Azure 資料庫 的高可用性」。
使用讀取副本進行復原規劃:使用讀取副本來卸載讀取流量,並支援需要升級副本的復原情境。 欲了解更多資訊,請參閱 Read replicas in 適用於 PostgreSQL 的 Azure 資料庫。
使用客戶管理的金鑰保護備份資料:當備份與還原資料必須符合組織的金鑰管理要求時,請使用客戶管理的金鑰加密。 欲了解更多資訊,請參閱 適用於 PostgreSQL 的 Azure 資料庫 中的備份與還原,以及 適用於 PostgreSQL 的 Azure 資料庫 中的資料加密配置。
規劃業務持續性目標:將備份保留、高可用性、讀取副本及地理還原選項與您的工作負載恢復時間目標及復原點目標對齊。 欲了解更多資訊,請參閱 適用於 PostgreSQL 的 Azure 資料庫 中的業務持續性。