ででりんブログ

写真やプログラミングを中心とした雑記帳

スポンサーリンク

【PostgreSQL】ロール(ユーザ)の作成方法

スポンサーリンク

今回はPostgreSQLのロール(ユーザ)の作成方法です。

コマンド

CREATE ROLE name [ [ WITH ] option [ ... ] ]

option:
      SUPERUSER | NOSUPERUSER
    | CREATEDB | NOCREATEDB
    | CREATEROLE | NOCREATEROLE
    | INHERIT | NOINHERIT
    | LOGIN | NOLOGIN
    | REPLICATION | NOREPLICATION
    | BYPASSRLS | NOBYPASSRLS
    | CONNECTION LIMIT connlimit
    | [ ENCRYPTED ] PASSWORD 'password'
    | VALID UNTIL 'timestamp'
    | IN ROLE role_name [, ...]
    | IN GROUP role_name [, ...]
    | ROLE role_name [, ...]
    | ADMIN role_name [, ...]
    | USER role_name [, ...]
    | SYSID uid

ユーザ作成

SQL

オプションありなしを比較するために下記2種類のコマンドでユーザを作成してみます。

CREATE ROLE test_user;
CREATE ROLE test_user2 WITH LOGIN PASSWORD 'test_password';

\duを実行するとロール一覧が確認できます。

f:id:dederin-photo:20210923173205j:plain
CREATE ROLE

pgAdmin

見やすいようにpgAdminで作成したユーザを確認してみます。
test_userはGroup Roleとなっています。
test_user2はLogin Roleとなっています。

f:id:dederin-photo:20210923173310j:plain
pgAdmin

ログイン確認

コマンドラインから作成したユーザでログイン可能か見てみます。
test_userはLogin Roleでないため、ログインできません。
test_user2は正しいパスワードを入力すればログイン可能です。

f:id:dederin-photo:20210923173552j:plain
ログイン確認

スポンサーリンク