如何向 postgres 使用者授予特定資料庫的所有權限?

如何向 postgres 使用者授予特定資料庫的所有權限?

我正在設定一個新的資料庫伺服器,打算將其用作許多服務的後端。這些服務中的每一個通常只關心系統中的單一資料庫,因此我想隔離每個服務連接的帳戶,以便只能存取該資料庫。服務應用程式管理自己的架構,因此我想為他們的資料庫提供類似於管理員的權限,但他們不應該能夠接觸任何其他內容。

有沒有辦法在 postgres 中設定這個?

這個問題在 ServerFault 上結束建議一種在模式範圍層級向使用者授予權限的方法;但是,這不適用於資料庫(Alter Default Privileges In Database xx給我一個語法錯誤Database)。

答案1

我幾乎一問就找到了答案。我正在尋找的神奇命令是:

Alter Database xxx Owner To user_xxx;

這在命令手冊中有記錄Alter Database

https://www.postgresql.org/docs/current/sql-alterdatabase.html

相關內容