PostgreSQL 13にロールの属性を変更する

2022年1月9日

環境
Windows10 64 bit
PostgreSQL 13.2

書式

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
ALTER ROLE ロール名 [ WITH ] オプション [ ... ]
ここでoptionは以下の通りです
SUPERUSER | NOSUPERUSER
| CREATEDB | NOCREATEDB
| CREATEROLE | NOCREATEROLE
| INHERIT | NOINHERIT
| LOGIN | NOLOGIN
| REPLICATION | NOREPLICATION
| BYPASSRLS | NOBYPASSRLS
| CONNECTION LIMIT connlimit
| [ ENCRYPTED ] PASSWORD 'password'
| VALID UNTIL 'timestamp'
ALTER ROLE ロール名 [ WITH ] オプション [ ... ] ここでoptionは以下の通りです SUPERUSER | NOSUPERUSER | CREATEDB | NOCREATEDB | CREATEROLE | NOCREATEROLE | INHERIT | NOINHERIT | LOGIN | NOLOGIN | REPLICATION | NOREPLICATION | BYPASSRLS | NOBYPASSRLS | CONNECTION LIMIT connlimit | [ ENCRYPTED ] PASSWORD 'password' | VALID UNTIL 'timestamp'
ALTER ROLE ロール名 [ WITH ] オプション [ ... ]
ここでoptionは以下の通りです
      SUPERUSER | NOSUPERUSER
    | CREATEDB | NOCREATEDB
    | CREATEROLE | NOCREATEROLE
    | INHERIT | NOINHERIT
    | LOGIN | NOLOGIN
    | REPLICATION | NOREPLICATION
    | BYPASSRLS | NOBYPASSRLS
    | CONNECTION LIMIT connlimit
    | [ ENCRYPTED ] PASSWORD 'password'
    | VALID UNTIL 'timestamp'

使用例
1.作成済みのロール「test00」を確認します

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
testdb=# \du test00
ロール一覧
ロール名 | 属性 | 所属グループ
----------+------------------------+--------------
test00 | ロール作成可, DB作成可 | {}
testdb=# \du test00 ロール一覧 ロール名 | 属性 | 所属グループ ----------+------------------------+-------------- test00 | ロール作成可, DB作成可 | {}
testdb=# \du test00
                    ロール一覧
 ロール名 |          属性          | 所属グループ
----------+------------------------+--------------
 test00   | ロール作成可, DB作成可 | {}

2.データベース作成CREATEDBの権限を削除します

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
testdb=# alter role test00 with nocreatedb;
ALTER ROLE
testdb=# alter role test00 with nocreatedb; ALTER ROLE
testdb=# alter role test00 with nocreatedb;
ALTER ROLE

「test00」ロールの属性が変更されました、「test00」ロールの属性を確認します

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
testdb=# \du test00
ロール一覧
ロール名 | 属性 | 所属グループ
----------+--------------+--------------
test00 | ロール作成可 | {}
testdb=# \du test00 ロール一覧 ロール名 | 属性 | 所属グループ ----------+--------------+-------------- test00 | ロール作成可 | {}
testdb=# \du test00
               ロール一覧
 ロール名 |     属性     | 所属グループ
----------+--------------+--------------
 test00   | ロール作成可 | {}

3.ロールのパスワードを変更します
testdb=# alter role test00 with password 'test10’;
ALTER ROLE

 

PostgreSQL

Posted by arkgame