他のバージョンの文書11 | 10 | 9.6 | 9.5 | 9.4 | 9.3 | 9.2 | 9.1 | 9.0 | 8.4 | 8.3 | 8.2 | 8.1 | 8.0 | 7.4 | 7.3 | 7.2

ALTER USER

Name

ALTER USER  --  データベースユーザアカウントを変更します。

Synopsis

ALTER USER username [ [ WITH ] option [ ... ] ]

ここで、option は以下の
とおりです。

	  [ ENCRYPTED | UNENCRYPTED ] PASSWORD 'password' 
        | CREATEDB | NOCREATEDB
        | CREATEUSER | NOCREATEUSER 
        | VALID UNTIL 'abstime'

入力

username

詳細が変更されるユーザ名です。

password

このアカウントに使われる新しいパスワードです。

ENCRYPTED
UNENCRYPTED

このキーワードはパスワードを pg_shadow に暗号化して保存するかどうかを制御します(この選択に関するより詳細については CREATE USER を参照して下さい)。

CREATEDB
NOCREATEDB

この句はユーザのデータベースの作成に関する権限を定義します。もし CREATEDB が指定されると、定義されているユーザはユーザ独自のデータベースを作成することができます。NOCREATEDBを使うとユーザにデータベースを作成する権限を与えません。

CREATEUSER
NOCREATEUSER

ユーザが自分で新しいユーザを作成できるかどうかを決定します。このオプションは、さらにそのユーザをすべてのアクセス制限を上書きできるスーパーユーザにします。

abstime

ユーザのパスワードの期限が切れる日付(そしてオプションで時刻)です。

出力

ALTER USER

変更が成功した場合に返るメッセージです。

ERROR: ALTER USER: user "username" does not exist

指定のユーザがデータベースに認知されていない場合に返るエラーメッセージです。

説明

ALTER USERはユーザの PostgreSQL アカウントの属性を変更するために使われます。このコマンドで指定されなかった属性は、以前の設定のまま残ります。

データベーススーパーユーザのみがこのコマンドで権限とパスワード有効期限を変更することができます。一般ユーザは自分自身のパスワードのみを変えることができます。

ALTER USER ではユーザグループのメンバ構成を変更することはできません。そのためには ALTER GROUP を使用して下さい。

新しいユーザの作成には CREATE USER を、ユーザの削除には DROP USER を使用して下さい。

使用方法

ユーザのパスワードを変更するには以下のようにします。

ALTER USER davide WITH PASSWORD 'hu8jmn3';

ユーザの有効期限を変更するには以下のようにします。

ALTER USER manuel VALID UNTIL 'Jan 31 2030';

以下のようにすると、ユーザの権限付与が UTC から 1 時間進んだタイムゾーンで 1998 年 5 月 4 日の正午までであることを指定して、ユーザの有効期限を変更します。

ALTER USER chris VALID UNTIL 'May 4 12:00:00 1998 +1';

ユーザに他のユーザと新しいデータベースを作成する権限を与えるには以下のようにします。

ALTER USER miriam CREATEUSER CREATEDB;

互換性

SQL92

SQL92 には ALTER USER 文はありません。標準ではユーザの定義は実装に任せています。