PostgreSQL 開始收緊 public 模式訪問權限!
當前位置:點晴教程→知識管理交流
→『 技術文檔交流 』
![]() 特性提交日志撤銷從 public 模式創建表的權限,現在由 pg_database_owner 擁有。 這將默認訪問控制列表 (ACL) 切換為自 CVE-2018-1058 以來文檔所推薦的設置。升級將保留任何舊的所有權和 ACL。之前未采納 2018 年建議的站點應重新審視。從頭開始部署新數據庫集群的方案可能需要創建模式、授予更多權限等。外部測試套件可能需要此類更新。 討論:https://postgr.es/m/20201031163518.GB4039133@rfd.leadboat.com 示例在之前的 PostgreSQL 版本中,默認允許任何用戶連接到任何數據庫,并在默認創建的 "public" 模式中創建新表(以及視圖等)。有一些人認為這會產生安全問題,會將 public 模式刪除掉,或者收緊 public 模式的訪問權限。 但現在情況發生了變化。在新的 PostgreSQL 版本中,默認情況下,非超級用戶賬戶將無法在非其擁有的數據庫的 public 模式中創建表。 讓我們來看一下:
上面,我們創建了 test 用戶和兩個數據庫,"x" 數據庫由超級用戶擁有,以及由 test 用戶擁有的 "test" 數據庫。 當我們進入兩個數據庫創建表時,結果如下:
當然,你仍然可以向 public 模式授予所有權限,以保留以前的行為,但默認情況下,將不再允許在屬于其他用戶的數據庫中創建對象。 非常不錯的特性。感謝社區的所有相關人員。 參考提交日志:https://git.postgresql.org/pg/commitdiff/b073c3ccd06e4cb845e121387a43faa8c68a7b62 轉自:https://mp.weixin.qq.com/s/a_MnPYVxVjeNZIhtSYV5ZA 該文章在 2025/8/19 10:35:16 編輯過 |
關鍵字查詢
相關文章
正在查詢... |