国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

pg數(shù)據(jù)庫授權(quán)

這篇具有很好參考價值的文章主要介紹了pg數(shù)據(jù)庫授權(quán)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

pg數(shù)據(jù)庫進行用戶授權(quán)

方式一:通過navicat進行簡單界面式操作(此處不講解)

方式二:命令方式

  • 創(chuàng)建用戶角色

此處說明,在pg庫里面用戶和角色的概念其實無區(qū)別

CREATE USER/ROLE name [ [ WITH ] option [ ... ] ]  : 關(guān)鍵詞 USER,ROLE; name 用戶或角色名; 
where option can be:
      SUPERUSER | NOSUPERUSER      :超級權(quán)限,擁有所有權(quán)限,默認(rèn)nosuperuser。
    | CREATEDB | NOCREATEDB        :建庫權(quán)限,默認(rèn)nocreatedb。
    | CREATEROLE | NOCREATEROLE    :建角色權(quán)限,擁有創(chuàng)建、修改、刪除角色,默認(rèn)nocreaterole。
    | INHERIT | NOINHERIT          :繼承權(quán)限,可以把除superuser權(quán)限繼承給其他用戶/角色,默認(rèn)inherit。
    | LOGIN | NOLOGIN              :登錄權(quán)限,作為連接的用戶,默認(rèn)nologin,除非是create user(默認(rèn)登錄)。
    | REPLICATION | NOREPLICATION  :復(fù)制權(quán)限,用于物理或則邏輯復(fù)制(復(fù)制和刪除slots),默認(rèn)是noreplication。
    | BYPASSRLS | NOBYPASSRLS      :安全策略RLS權(quán)限,默認(rèn)nobypassrls。
    | CONNECTION LIMIT connlimit   :限制用戶并發(fā)數(shù),默認(rèn)-1,不限制。正常連接會受限制,后臺連接和prepared事務(wù)不受限制。
    | [ ENCRYPTED ] PASSWORD 'password' | PASSWORD NULL :設(shè)置密碼,密碼僅用于有l(wèi)ogin屬性的用戶,不使用密碼身份驗證,則可以省略此選項。可以選擇將空密碼顯式寫為PASSWORD NULL。
                                                         加密方法由配置參數(shù)password_encryption確定,密碼始終以加密方式存儲在系統(tǒng)目錄中。
    | VALID UNTIL 'timestamp'      :密碼有效期時間,不設(shè)置則用不失效。
    | IN ROLE role_name [, ...]    :新角色將立即添加為新成員。
    | IN GROUP role_name [, ...]   :同上
    | ROLE role_name [, ...]       :ROLE子句列出一個或多個現(xiàn)有角色,這些角色自動添加為新角色的成員。 (這實際上使新角色成為“組”)。
    | ADMIN role_name [, ...]      :與ROLE類似,但命名角色將添加到新角色WITH ADMIN OPTION,使他們有權(quán)將此角色的成員資格授予其他人。
    | USER role_name [, ...]       :同上
    | SYSID uid                    :被忽略,但是為向后兼容性而存在。
  • 授權(quán)命令
 
 
GRANT { { SELECT | INSERT | UPDATE | DELETE | TRUNCATE | REFERENCES | TRIGGER }
    [, ...] | ALL [ PRIVILEGES ] }
    ON { [ TABLE ] table_name [, ...]
         | ALL TABLES IN SCHEMA schema_name [, ...] }
    TO role_specification [, ...] [ WITH GRANT OPTION ]
 
##單表授權(quán):授權(quán)test賬號可以訪問schema為test的t1表
grant select,insert,update,delete on test.t1 to test;
##所有表授權(quán):
##shema說明:選擇的模式為public,我將public模式下的所有表的增刪改查授權(quán)給角色名為test的角色
grant select,insert,update,delete on all tables in schema "public" to test;
 
 
GRANT { { SELECT | INSERT | UPDATE | REFERENCES } ( column_name [, ...] )
    [, ...] | ALL [ PRIVILEGES ] ( column_name [, ...] ) }
    ON [ TABLE ] table_name [, ...]
    TO role_specification [, ...] [ WITH GRANT OPTION ]
 
 
GRANT { { USAGE | SELECT | UPDATE }
    [, ...] | ALL [ PRIVILEGES ] }
    ON { SEQUENCE sequence_name [, ...]
         | ALL SEQUENCES IN SCHEMA schema_name [, ...] }
    TO role_specification [, ...] [ WITH GRANT OPTION ]
 
##序列(自增鍵)屬性授權(quán),指定test schema下的seq_id_seq 給test用戶
grant select,update on sequence test.seq_id_seq to test;
##序列(自增鍵)屬性授權(quán),給用戶test授權(quán)test schema下的所有序列
grant select,update on all sequences in schema "public" to test;
 
 
GRANT { { CREATE | CONNECT | TEMPORARY | TEMP } [, ...] | ALL [ PRIVILEGES ] }
    ON DATABASE database_name [, ...]
    TO role_specification [, ...] [ WITH GRANT OPTION ]
 
 
GRANT { USAGE | ALL [ PRIVILEGES ] }
    ON DOMAIN domain_name [, ...]
    TO role_specification [, ...] [ WITH GRANT OPTION ]
 
##
GRANT { USAGE | ALL [ PRIVILEGES ] }
    ON FOREIGN DATA WRAPPER fdw_name [, ...]
    TO role_specification [, ...] [ WITH GRANT OPTION ]
##
 
GRANT { USAGE | ALL [ PRIVILEGES ] }
    ON FOREIGN SERVER server_name [, ...]
    TO role_specification [, ...] [ WITH GRANT OPTION ]
##
GRANT { EXECUTE | ALL [ PRIVILEGES ] }
    ON { { FUNCTION | PROCEDURE | ROUTINE } routine_name [ ( [ [ argmode ] [ arg_name ] arg_type [, ...] ] ) ] [, ...]
         | ALL { FUNCTIONS | PROCEDURES | ROUTINES } IN SCHEMA schema_name [, ...] }
    TO role_specification [, ...] [ WITH GRANT OPTION ]
##
 
 
GRANT { USAGE | ALL [ PRIVILEGES ] }
    ON LANGUAGE lang_name [, ...]
    TO role_specification [, ...] [ WITH GRANT OPTION ]
##
 
GRANT { { SELECT | UPDATE } [, ...] | ALL [ PRIVILEGES ] }
    ON LARGE OBJECT loid [, ...]
    TO role_specification [, ...] [ WITH GRANT OPTION ]##
 
GRANT { { CREATE | USAGE } [, ...] | ALL [ PRIVILEGES ] }
    ON SCHEMA schema_name [, ...]
    TO role_specification [, ...] [ WITH GRANT OPTION ]
 
##連接模式權(quán)限,授權(quán)test訪問public模式權(quán)限
grant usage on schema "public" to test;
 
GRANT { CREATE | ALL [ PRIVILEGES ] }
    ON TABLESPACE tablespace_name [, ...]
    TO role_specification [, ...] [ WITH GRANT OPTION ]
 
GRANT { USAGE | ALL [ PRIVILEGES ] }
    ON TYPE type_name [, ...]
    TO role_specification [, ...] [ WITH GRANT OPTION ]
 
where role_specification can be:
 
    [ GROUP ] role_name
  | PUBLIC
  | CURRENT_USER
  | SESSION_USER
 
GRANT role_name [, ...] TO role_name [, ...] [ WITH ADMIN OPTION ]
  • 授權(quán)參數(shù)說明
權(quán)限說明:
SELECT:允許從指定表,視圖或序列的任何列或列出的特定列進行SELECT。也允許使用COPY TO。在UPDATEDELETE中引用現(xiàn)有列值也需要此權(quán)限。對于序列,此權(quán)限還允許使用currval函數(shù)。對于大對象,此權(quán)限允許讀取對象。

INSERT:允許將新行INSERT到指定的表中。如果列出了特定列,則只能在INSERT命令中為這些列分配(因此其他列將接收默認(rèn)值)。也允許COPY FROMUPDATE:允許更新指定表的任何列或列出的特定列,需要SELECT權(quán)限。

DELETE:允許刪除指定表中的行,需要SELECT權(quán)限。

TRUNCATE:允許在指定的表上創(chuàng)建觸發(fā)器。

REFERENCES:允許創(chuàng)建引用指定表或表的指定列的外鍵約束。

TRIGGER:允許在指定的表上創(chuàng)建觸發(fā)器。

CREATE:對于數(shù)據(jù)庫,允許在數(shù)據(jù)庫中創(chuàng)建新的schema、table、index。

CONNECT:允許用戶連接到指定的數(shù)據(jù)庫。在連接啟動時檢查此權(quán)限。

TEMPORARY、TEMP:允許在使用指定數(shù)據(jù)庫時創(chuàng)建臨時表。

EXECUTE:允許使用指定的函數(shù)或過程以及在函數(shù)。

USAGE:對于schema,允許訪問指定模式中包含的對象;對于sequence,允許使用currval和nextval函數(shù)。對于類型和域,允許在創(chuàng)建表,函數(shù)和其他模式對象時使用類型或域。

ALL PRIVILEGES:一次授予所有可用權(quán)限。
  • 權(quán)限撤銷
 
REVOKE [ GRANT OPTION FOR ]
   { { SELECT | INSERT | UPDATE | DELETE | TRUNCATE | REFERENCES | TRIGGER }
   [, ...] | ALL [ PRIVILEGES ] }
   ON { [ TABLE ] table_name [, ...]
        | ALL TABLES IN SCHEMA schema_name [, ...] }
   FROM { [ GROUP ] role_name | PUBLIC } [, ...]
   [ CASCADE | RESTRICT ]
 
##移除用戶test在schema public上所有表的select權(quán)限
revoke select on all tables in schema "public" from test;
 
 
REVOKE [ GRANT OPTION FOR ]
   { { SELECT | INSERT | UPDATE | REFERENCES } ( column_name [, ...] )
   [, ...] | ALL [ PRIVILEGES ] ( column_name [, ...] ) }
   ON [ TABLE ] table_name [, ...]
   FROM { [ GROUP ] role_name | PUBLIC } [, ...]
   [ CASCADE | RESTRICT ]
 
##移除用戶test在 public模式的t1表的id列的查詢權(quán)限
revoke select (id) on public.t1 from test;
 
 
REVOKE [ GRANT OPTION FOR ]
   { { USAGE | SELECT | UPDATE }
   [, ...] | ALL [ PRIVILEGES ] }
   ON { SEQUENCE sequence_name [, ...]
        | ALL SEQUENCES IN SCHEMA schema_name [, ...] }
   FROM { [ GROUP ] role_name | PUBLIC } [, ...]
   [ CASCADE | RESTRICT ]
##序列
 
 
REVOKE [ GRANT OPTION FOR ]
   { { CREATE | CONNECT | TEMPORARY | TEMP } [, ...] | ALL [ PRIVILEGES ] }
   ON DATABASE database_name [, ...]
   FROM { [ GROUP ] role_name | PUBLIC } [, ...]
   [ CASCADE | RESTRICT ]
##庫
 
 
REVOKE [ GRANT OPTION FOR ]
   { USAGE | ALL [ PRIVILEGES ] }
   ON DOMAIN domain_name [, ...]
   FROM { [ GROUP ] role_name | PUBLIC } [, ...]
   [ CASCADE | RESTRICT]
##
 
 
REVOKE [ GRANT OPTION FOR ]
   { USAGE | ALL [ PRIVILEGES ] }
   ON FOREIGN DATA WRAPPER fdw_name [, ...]
   FROM { [ GROUP ] role_name | PUBLIC } [, ...]
   [ CASCADE | RESTRICT]
##
 
REVOKE [ GRANT OPTION FOR ]
   { USAGE | ALL [ PRIVILEGES ] }
   ON FOREIGN SERVER server_name [, ...]
   FROM { [ GROUP ] role_name | PUBLIC } [, ...]
   [ CASCADE | RESTRICT]
##
 
 
REVOKE [ GRANT OPTION FOR ]
   { EXECUTE | ALL [ PRIVILEGES ] }
   ON { { FUNCTION | PROCEDURE | ROUTINE } function_name [ ( [ [ argmode ] [ arg_name ] arg_type [, ...] ] ) ] [, ...]
        | ALL { FUNCTIONS | PROCEDURES | ROUTINES } IN SCHEMA schema_name [, ...] }
   FROM { [ GROUP ] role_name | PUBLIC } [, ...]
   [ CASCADE | RESTRICT ]
##
REVOKE [ GRANT OPTION FOR ]
   { USAGE | ALL [ PRIVILEGES ] }
   ON LANGUAGE lang_name [, ...]
   FROM { [ GROUP ] role_name | PUBLIC } [, ...]
   [ CASCADE | RESTRICT ]
##
 
 
REVOKE [ GRANT OPTION FOR ]
   { { SELECT | UPDATE } [, ...] | ALL [ PRIVILEGES ] }
   ON LARGE OBJECT loid [, ...]
   FROM { [ GROUP ] role_name | PUBLIC } [, ...]
   [ CASCADE | RESTRICT ]
##
 
 
REVOKE [ GRANT OPTION FOR ]
   { { CREATE | USAGE } [, ...] | ALL [ PRIVILEGES ] }
   ON SCHEMA schema_name [, ...]
   FROM { [ GROUP ] role_name | PUBLIC } [, ...]
   [ CASCADE | RESTRICT ]
##schema權(quán)限
 
 
REVOKE [ GRANT OPTION FOR ]
   { CREATE | ALL [ PRIVILEGES ] }
   ON TABLESPACE tablespace_name [, ...]
   FROM { [ GROUP ] role_name | PUBLIC } [, ...]
   [ CASCADE | RESTRICT ]
##
 
 
REVOKE [ GRANT OPTION FOR ]
   { USAGE | ALL [ PRIVILEGES ] }
   ON TYPE type_name [, ...]
   FROM { [ GROUP ] role_name | PUBLIC } [, ...]
   [ CASCADE | RESTRICT ]
##
REVOKE [ ADMIN OPTION FOR ]
   role_name [, ...] FROM role_name [, ...]
   [ CASCADE | RESTRICT ]
  • 如果用戶需要創(chuàng)建表的權(quán)限對該角色進行全部授權(quán)之后,發(fā)現(xiàn)建表的時候報錯說什么當(dāng)前用戶是一個readonly的會話可以進行下面操作進行修改
ALTER USER xx set default_transaction_read_only=NO --修改用戶的會話不是只讀

參考連接:https://blog.csdn.net/eagle89/article/details/112169903文章來源地址http://www.zghlxwxcb.cn/news/detail-503564.html

到了這里,關(guān)于pg數(shù)據(jù)庫授權(quán)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • MySQL數(shù)據(jù)庫配置及創(chuàng)建用戶和授權(quán)

    MySQL數(shù)據(jù)庫配置及創(chuàng)建用戶和授權(quán)

    注意: 都是基于MySQL8.0以上版本 需要注意的是,修改 MySQL 的配置參數(shù)時需要謹(jǐn)慎,如果參數(shù)配置不合理,可能會導(dǎo)致數(shù)據(jù)庫性能下降或出現(xiàn)其他問題。修改 MySQL 的配置參數(shù)時,最好具有一定的經(jīng)驗或者了解相關(guān)的 MySQL 參數(shù)調(diào)優(yōu)知識。 vi /etc/my.cnf 第一步: cd /etc #進入etc目錄

    2024年02月15日
    瀏覽(18)
  • MySQL數(shù)據(jù)庫——MySQL GRANT:用戶授權(quán)

    授權(quán)就是為某個用戶賦予某些權(quán)限。例如,可以為新建的用戶賦予查詢所有數(shù)據(jù)庫和表的權(quán)限。MySQL 提供了 GRANT 語句來為用戶設(shè)置權(quán)限。 在 MySQL 中,擁有 GRANT 權(quán)限的用戶才可以執(zhí)行? GRANT ?語句,其語法格式如下: 其中: priv_type 參數(shù)表示權(quán)限類型; columns_list 參數(shù)表示權(quán)

    2024年02月06日
    瀏覽(19)
  • Oracle數(shù)據(jù)庫中,授權(quán)某用戶可以查詢其他用戶的表

    在Oracle數(shù)據(jù)庫中,授權(quán)一個用戶可以查看其他所有用戶的表,需要執(zhí)行以下步驟: 使用數(shù)據(jù)庫管理員賬號連接到Oracle數(shù)據(jù)庫。 通過 GRANT 命令給用戶授予必要的權(quán)限。例如,如果要授權(quán)用戶 user1 可以查看所有其他用戶的表,可以執(zhí)行以下命令: 這條命令將授予 user1 ?SELECT

    2024年02月08日
    瀏覽(63)
  • Mysql數(shù)據(jù)庫表管理和用戶管理與授權(quán)

    Mysql數(shù)據(jù)庫表管理和用戶管理與授權(quán)

    1)方式一:創(chuàng)建新表,導(dǎo)入數(shù)據(jù) ?2)復(fù)制表(直接復(fù)制表不能保證原有的表結(jié)構(gòu)) ?創(chuàng)建方式與創(chuàng)建表完全一致,最大的區(qū)別是,臨時表只在當(dāng)前的數(shù)據(jù)庫連接生效,當(dāng)數(shù)據(jù)庫連接斷開或重新連接終端時,該臨時表均失效,無法查看。 方式一:delete清空?? 方式二:truncat

    2024年02月09日
    瀏覽(21)
  • Mysql數(shù)據(jù)庫中的用戶管理與授權(quán)

    Mysql數(shù)據(jù)庫中的用戶管理與授權(quán)

    ddl: create drop alter dml:對數(shù)據(jù)進行管理update insert into delete truncate dql:查詢語句 select dcl:權(quán)限控制語句grant revoke create user \\\'用戶名\\\'@\\\'主機\\\' identified by \\\'密碼\\\' 加密 SELECT PASSWORD(\\\'密碼\\\'); #先獲取加密的密碼 CREATE USER \\\'lisi\\\'@\\\'localhost\\\' IDENTIFIED BY PASSWORD \\\'加密的密碼\\\'; ?select user(); grant all

    2024年02月07日
    瀏覽(19)
  • 微信小程序?qū)崿F(xiàn)登錄授權(quán),并將獲取到的用戶授權(quán)信息存儲到數(shù)據(jù)庫中

    微信小程序?qū)崿F(xiàn)登錄授權(quán),并將獲取到的用戶授權(quán)信息存儲到數(shù)據(jù)庫中

    官方開發(fā)文檔 注意:在實現(xiàn)授權(quán)登錄時,不要使用測試號進行 wx.getUserProfile使用文檔 config文件代碼如下 路由模塊 主要代碼(如果不想多個文件,可以將wxuserHandle.wxuser這個位置內(nèi)容替換為exports.wxuser的內(nèi)容) 注意: 在返回token的字符串拼接時,Bearer 后面必須有一個空格 數(shù)據(jù)

    2024年02月10日
    瀏覽(42)
  • oracle數(shù)據(jù)庫給用戶授權(quán)DBA權(quán)限&Oracle查看哪些用戶具有DBA權(quán)限

    步驟一:以sysdba身份登錄到Oracle數(shù)據(jù)庫 在授予DBA權(quán)限之前,我們首先要以sysdba身份登錄到Oracle數(shù)據(jù)庫。使用以下命令登錄: 步驟二:創(chuàng)建用戶(如有用戶跳過) 要授予DBA權(quán)限,首先需要創(chuàng)建一個新用戶。使用以下命令創(chuàng)建一個新用戶: 步驟三:授予DBA權(quán)限 一旦用戶創(chuàng)建成

    2024年02月09日
    瀏覽(27)
  • postgresql|數(shù)據(jù)庫|角色(用戶)管理工作---授權(quán)和去權(quán)以及usage和select兩種權(quán)限的區(qū)別

    postgresql|數(shù)據(jù)庫|角色(用戶)管理工作---授權(quán)和去權(quán)以及usage和select兩種權(quán)限的區(qū)別

    postgresql做為一個比較復(fù)雜的關(guān)系型的重型數(shù)據(jù)庫,不管是安裝部署,還是后期的運行維護,都還是有比較多的細(xì)節(jié)問題需要引起關(guān)注。 例如,用戶權(quán)限的合理分配,那么,什么是權(quán)限的合理分配呢? 自然是權(quán)限的最小化原則,也就是說每個用戶能夠完成其權(quán)限范圍內(nèi)的工作

    2024年02月13日
    瀏覽(29)
  • MySQL數(shù)據(jù)庫——MySQL創(chuàng)建用戶(3種方式)

    MySQL 在安裝時,會默認(rèn)創(chuàng)建一個名為 root 的用戶,該用戶擁有超級權(quán)限,可以控制整個 MySQL 服務(wù)器。 在對 MySQL 的日常管理和操作中,為了避免有人惡意使用 root 用戶控制數(shù)據(jù)庫,我們通常創(chuàng)建一些具有適當(dāng)權(quán)限的用戶,盡可能地不用或少用 root 用戶登錄系統(tǒng),以此來確保數(shù)

    2024年02月05日
    瀏覽(19)
  • pg數(shù)據(jù)庫安裝

    pg數(shù)據(jù)庫安裝

    pg數(shù)據(jù)庫安裝 下載對應(yīng)的安裝包 安裝服務(wù) 使用安裝包直接安裝 rpm -ivh postgresql13-libs-13.1-3PGDG.rhel7.x86_64.rpm rpm -ivh postgresql13-13.1-3PGDG.rhel7.x86_64.rpm rpm -ivh postgresql13-server-13.1-3PGDG.rhel7.x86_64.rpm rpm -ivh postgresql13-contrib-13.1-3PGDG.rhel7.x86_64.rpm 配置用戶數(shù)據(jù)存儲目錄日志目錄 [root@rocketm

    2023年04月19日
    瀏覽(20)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包