PostgreSQL許可權問題

2021-08-31 04:53:23 字數 964 閱讀 2455

許可權

如果你建立了乙個資料庫物件,那麼你就成為它的所有者。預設時,只有物件的所有者可以在物件上做任何事情。為了允許其它使用者使用它,我們必須賦予他們許可權。不過超級使用者總是可以操作任何物件。

有好多種不同的許可權:select, insert, update, delete, references, trigger, create, connect, temporary, execute, usage 。適用於特定物件的許可權因物件型別(表/函式等)不同而不同。有關 postgresql 所支援的不同型別的許可權的完整資訊,請參考 grant 的手冊頁。下面的章節將為你展示如何利用這些許可權。

修改或者刪除乙個物件的許可權永遠是所有者獨有的許可權。

【注意】要改變乙個表、索引、序列、或者檢視的所有者,使用 alter table 命令,以及對應其它物件型別的 alter 命令。

使用 grant 命令賦予許可權。因此,如果 joe 是乙個已經存在的使用者,而 accounts 是乙個已經存在的表,更新表的許可權可以用下面的命令賦予:

grant update on accounts to joe;在許可權的位置寫上 all 則賦予所有與該物件型別相關的許可權。

名為 public 的特殊"使用者"可以用於將許可權賦予系統中的所有使用者。另外,還可以使用"組"角色來幫助管理一群使用者的許可權,細節可參見章18。

可以使用 revoke 命令撤銷許可權:

revoke all on accounts from public;物件所有者的特殊許可權(也就是 drop, grant, revoke 等許可權)總是隱含地屬於所有者,並且不能賦予或者撤銷。但是物件所有者可以選擇撤銷自己的普通許可權,比如把乙個表做成對自己和別人都是唯讀的。

最初,只有物件所有者(或者超級使用者)可以賦予或者撤銷物件的許可權。但是,我們可以賦予乙個"with grant option"許可權,這樣就允許接受許可權的人將該許可權轉授他人。如果授權選項後來被撤銷,那麼所有那些從這個接受者接受了許可權的使用者(直接或間級)都將失去該許可權。

postgresql許可權修改

兩處修改 1.postgresql.conf listen addresses項值設定為 在9.0 windows版中,該項配置已經是 無需修改。2.pg hba.conf host all all 127.0.0.1 32 md5行下新增以下配置 host all all 0.0.0.0 0 md...

postgresql 遠端許可權開啟

前言 之前只會配置postgresql的指定ip的遠端許可權,後來乙個客戶想通過遠端連線postgre,但是她的ip經常發生變動,導致我每次都要重新再進行設定,後來終於找到了方法,現做如下記錄 只針對windows服務 找到pg hba.conf配置檔案,路徑一般情況下為postgre安裝目錄的da...

postgresql筆記016 許可權管理

許可權管理 當建立乙個資料庫物件時,他就被賦予了所有者。這個所有者通常是執行建立語句的角色。對大多數型別的物件,初始狀態只有其所有者 或超級管理員 可以對它做任何事情。要允許其它角色使用它,必須要經過許可權授予。在資料庫中有很多種不同的許可權 許可權類別 中文解釋 select 查詢insert 插...