ray88’s diary

お仕事で困ったとき用の自分用の覚書

PostgreSQL ログインロールとグループロールの管理

PostgreSQL 目次

【権限関連の用語とその定義と関係性】

  1. ロール (Role):
    ロールはデータベース内のエンティティを表します。
    ユーザーやグループはロールによって表現され、ロールには権限が付与されます。一つのロールはデータベースにログインすることができる(ログインロール)、または他のロールの集合を表現する(グループロール)ことができます。
  2. メンバー (Member):
    メンバーは、グループロールに属するロールを指します。
    つまり、あるロールが他のロールのメンバーである場合、そのロールはグループロールに「属している」と言えます。メンバーは、グループロールに割り当てられた権限を引き継ぐことができます。
  3. グループロール (Group role):
    グループロールは、一つ以上のロールをまとめたものを指します。グループロール自体はデータベースにログインすることはできませんが、グループロールに属するロール(メンバー)はグループロールに割り当てられた権限を引き継ぐことができます。
  4. 所属先 (Belonging):
    所属先は、あるロールが特定のグループロールのメンバーであることを示します。つまり、ロールAがグループロールBのメンバーである場合、ロールAの所属先はグループロールBとなります。

※各用語の関係性
 ロールはメンバーとしてグループロールに所属することができ、
 その結果、ロールはグループロールに割り当てられた権限を引き継ぐことができる。

【ロールの作成手順】
アカウント→作成→ログイン/グループロール を選択

■Generalタブ
  名称:ログインロール名を入力
■定義タブ
 パスワード:作成するログインロールのパスワードを入力
 アカウント期限:作成するログインロールがどの期限まで有効であるかを設定
         何も設定しない場合は無期限になる

■権限タブで以下の属性の可否を編集
 ログイン属性・スーパーユーザ属性・ロール作成属性・データベース作成属性・
 カタログ更新属性・親ロールから属性を継承・
 ストリーミングレプリケーション、バックアップ属性
■最後に「保存」ボタンをクリックする

ロールが作成された

【グループロール作成手順】
アカウント→作成→ログイン/グループロール を選択

「General」タブの「名称」にグループロール名を入力

「メンバシップ」タブの「ユーザ/ロール」でグループロールに追加するロールを選択する。管理者権限を付与する場合は「WITH ADMIN」にチェックする。

グループロールの設定がすべて終わったら「保存」ボタンをクリックする

※所属先は「ユーザ/ロール」がほかのグループロールに所属している場合に選択する。所属先のグループロールに作成するグループロールの管理者権限を付与したい場合は「WITH ADMIN」にチェックを入れる

グループロールが作成された