PostgreSQLスキルアップノート(自己啓発のための個人サイト)

ユーザの作成


【一覧に戻る】



━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■■■■ PostgreSQL スキルアップノート
■■■■
■◆■■ ユーザの作成(ロール)
■■■■
■■■■
■■■■ 2013/01/04
■■■■ 使用環境:PostgreSQL9.1.7 (CentOS6.2)
                                                                   (C) 2013 ohdb
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
★自己都合により実機確認は9.1、マニュアルへのリンクは9.2としています。ご了承下さい。

【マニュアル】

第 20章データベースロール→●[マニュアル]

CREATE ROLE→●[マニュアル]
CREATE USER→●[マニュアル]
createuserコマンド→●[マニュアル]

【記事】
−




ユーザの作成方法は
・CREATE ROLE(SQL文)
・CREATE USER(SQL文)
・createuserコマンド
の3種類がある。

createuserコマンドが扱いやすい(好みにもよる)ので以下はcreateuserコマンドを中心に記載。



■1■ ユーザ(ロール)の作成
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

createuserコマンドによる実行例。


以下OSプロンプトより


・スーパーユーザ権限(-s)のユーザ(dba01)を作成

  【□】 createuser -P -s dba01   


・一般のユーザを想定したユーザ(user01)を作成

  【□】 createuser -P -S -D -R user01



  主なパラメータ
  ----------------------------------------------------------
  -P       新しいユーザのパスワードのプロンプトを表示。 

  -s/-S    スーパーユーザにする。/ しない。
  -s/-D    データベースの作成を許可する。 /許可しない
  -r/-R    新しいロールの作成を許可する。 (create role権限)/許可しない 
 
  -U username  接続するユーザ名。作成ユーザ名ではないので注意。
               指定しない場合、psqlなどと同様にデフォルトのユーザ名での接続となる。
               (環境変数PGUSER、なければunixと同名のユーザ名で接続)



【参考】 一般のユーザの作成で、オプションに-P以外何も指定しないと・・・
        指定しなかったものをそれぞれ聞いてくる。

        $ createuser -P  user01
        新しいロールのためのパスワード:
        もう一度入力してください:
        新しいロールをスーパーユーザにしますか? (y/n)n
        新しいロールに対してデータベースを作成する権限を与えますか? (y/n)n
        新しいロールに対して別のロールを作成する権限を与えますか? (y/n)n

【参考】 削除はdropuserコマンド。
         いきなり消えてしまうので、-iで確認プロンプトを使う習慣をつけるべき。
         $ dropuser -i user01
         ロール"user01"は永久に削除されます
         実行しますか? (y/n)y



■3■ その他
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

・スーパーユーザを作成できるのはスーパーユーザのみ。
・スーパーユーザ以外のユーザの作成はCREATEROLE権限を持つユーザが可。(当然スーパーユーザも可)



以上






inserted by FC2 system