描述適用於 PostgreSQL 的 Azure 資料庫安全性
適用於 PostgreSQL 的 Azure 資料庫使用多層安全性來保護資料。 這些階層包括:
- 資料加密
- 網路安全性
- 存取管理
資料加密
適用於 PostgreSQL 的 Azure 資料庫會加密傳輸中的資料和待用資料。 本主題會在單元 5 中討論。
網路安全性
適用於 PostgreSQL 的 Azure 資料庫彈性伺服器提供兩個網路選項:
- 私人存取。 您會在具有私人網路通訊和使用私人 IP 位址的 Azure 虛擬網路中建立伺服器。 網路安全性群組中的安全性規則能讓您篩選可在虛擬網路子網路及網路介面中流入和流出的網路流量類型。
- 公用存取。 伺服器可以透過具有可公開解析 DNS (網域名稱系統) 位址的公用端點來存取。 防火牆預設會封鎖所有存取。 您可以建立 IP 防火牆規則,以根據每個要求的來源 IP 位址授與伺服器存取權。
注意
當您建立適用於 PostgreSQL 的 Azure 資料庫彈性伺服器時,您可以選取 [私人存取] 或 [公用存取]。 建立伺服器之後,即無法變更網路選項。
這兩個選項都會控制伺服器層級的存取權,而不是在資料庫或資料表層級。 使用 PostgreSQL 角色來授與或拒絕資料庫、資料表和其他物件的存取權。
您也可以藉由建立防火牆規則,僅允許已知 IP 位址範圍的連線,以管理伺服器的存取權。
存取管理
當您建立適用於 PostgreSQL 之 Azure 資料庫的伺服器時,您也會建立管理帳戶。 此管理員角色可用於建立更多 PostgreSQL 角色。 角色是資料庫使用者或使用者群組。 適用於 PostgreSQL 之 Azure 資料庫伺服器的存取權會使用使用者名稱、密碼和授與或拒絕角色的權限進行驗證。
SCRAM 驗證
大部分適用於 PostgreSQL 的 Azure 資料庫伺服器的存取權都依賴密碼。 不過,您可以使用 SCRAM 驗證,這是一種安全的密碼驗證通訊協定,可以驗證用戶端,而不需要向使用者顯示伺服器的純文字密碼。 Salted Challenge Response Authentication Mechanism (SCRAM) 的設計目的是讓中間人攻擊變得更困難。
設定密碼加密:
- 在 Azure 入口網站中,巡覽至您適用於 PostgreSQL 的 Azure 資料庫彈性伺服器,並在 [設定] 下方,選取 [伺服器參數]。
- 在搜尋列中,輸入 password_encryption。 有兩個參數可控管密碼加密;這兩者都預設為 SCRAM-SHA-256:
- password_encryption
- azure.accepted_password_auth_method
.