本文介紹RDS PostgreSQL高許可權帳號和普通帳號的許可權詳情。
許可權說明
為了保障資料庫的安全和穩定性,RDS PostgreSQL中的資料庫帳號未被授予對pg_authid表的存取權限。您可以通過使用pg_roles視圖來查詢資料庫角色的資訊。
普通帳號
RDS PostgreSQL的普通帳號許可權和社區的非superuser帳號的許可權相同。具體請參見PostgreSQL官方文檔。
高許可權帳號
RDS PostgreSQL的高許可權帳號除了支援普通帳號的所有許可權外,還支援以下許可權:
在兩階段交易認可中,可以完成任何已準備的事務。
當涉及到多個資料庫或系統之間的交易處理時,為了確保資料的一致性,常常使用兩階段交易認可(Two-Phase Commit)協議。這個協議確保所有相關的事務要麼全部提交(完成),要麼全部復原(取消)。
更多資訊,請參見SQL PREPARE TRANSACTION。
手動調用VACUUM相關命令,支援清理任何錶。
Vacuum是用於回收已刪除行所佔用的磁碟空間,並更新統計資料的過程。更多資訊,請參見VACUUM。
使用CREATE EVENT TRIGGER建立事件觸發程序(Event trigger),或將事件觸發程序的所有者改為自己。
事件觸發程序的更多資訊,請參見CREATE EVENT TRIGGER。
使用CREATE EXTENSION建立外掛程式。支援的外掛程式請參見支援外掛程式列表。
建立函數時為函數指定LEAKPROOF屬性,或修改函數的LEAKPROOF的屬性。
更多資訊,請參見CREATE FUNCTION。
使用CREATE PUBLICATION建立發布,或修改一個發布的所有者。
在PostgreSQL中,建立發布(publication)是通過邏輯複製功能來實現的,允許將資料庫的更改操作傳輸到其他資料庫執行個體。
使用CREATE SUBSCRIPTION建立訂閱,或修改一個訂閱的所有者。
在PostgreSQL中,您可以通過邏輯複製功能建立訂閱(subscription)。訂閱允許將來自發布(publication)的更改應用到訂閱資料庫。
使用文本搜尋(text search)功能,進行全文檢索搜尋和文本匹配操作。更多資訊,請參見Full Text Search。
修改資料類型的所有者。
建立高許可權帳號,或者修改其他普通帳號為高許可權帳號。
查看高許可權帳號和所有普通帳號的後端進程,並支援對進程使用
pg_terminate_backend()
等函數。從視圖
pg_stat_activity
中擷取高許可權帳號和所有普通帳號的後端串連資訊。對普通帳號的對象執行GRANT 、REVOKE操作。更多資訊,請參見GRANT、REVOKE。
使用SET ROLE將當前會話的帳號(即高許可權帳號)許可權變更為指定普通帳號的許可權。
相關參考
如果您需要對帳號許可權進行精細化管理,請參見RDS PostgreSQL許可權管理最佳實務。