PostgreSQL/PostgreSQLでユーザのロールを変更する
の編集
Top
/
PostgreSQL
/
PostgreSQLでユーザのロールを変更する
[
トップ
] [
編集
|
差分
|
バックアップ
|
添付
|
リロード
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
-- 雛形とするページ --
PostgreSQL/template0とtemplate1の違いについて
#navi(../) * PostgreSQLでユーザのロールを変更する・ALTER ROLE, ALTER USER [#la2b390d] 作成したユーザのALTER ROLEをつかってロールを変更する操作例を以下に記します。~ (ALTER USERはALTER ROLEの別名になっています。したがって、ALTER ROLEをALTER USERにしても同様の動作になります。) 使用したOSはCentOS6になります。~ また、使用したPostgreSQLのバージョンは以下の通りです。 postgres=# select version(); version ------------------------------------------------------------------------------------------------------------------ PostgreSQL 8.4.13 on x86_64-redhat-linux-gnu, compiled by GCC gcc (GCC) 4.4.6 20120305 (Red Hat 4.4.6-4), 64-bit (1 行) #contents #htmlinsertpcsp(db-top.html,db-sp.html) * 関連記事・関連資料 [#p92ac838] -[[PostgreSQLでテーブルに対してのアクセス権限を設定する・GRANT,REVOKE>PostgreSQL/テーブルに対してのアクセス権限を設定する・GRANT,REVOKE]] * ユーザを作成しALTER ROLEしてみる [#y72fbaf5] ユーザを作成して、ALTER ROLEでスーパーユーザ権限などを付与してみます。 -ユーザを追加し、ロール一覧を確認 postgres=# create user sakura with password 'sakurapass'; CREATE ROLE postgres=# create user tsubaki with password 'tsubakipass'; CREATE ROLE postgres=# \du ロール一覧 ロール名 | 属性 | メンバー ----------+--------------------+---------- postgres | スーパーユーザ | {} : ロールを作成できる : DBを作成できる sakura | | {} tsubaki | | {} -ユーザ(ロール)sakuraにスーパーユーザ権限を付与する ALTER ROLEを使って、sakuraにスーパーユーザ権限を付与しました。 postgres=# ALTER ROLE sakura WITH SUPERUSER; ALTER ROLE postgres=# \du ロール一覧 ロール名 | 属性 | メンバー ----------+--------------------+---------- postgres | スーパーユーザ | {} : ロールを作成できる : DBを作成できる sakura | スーパーユーザ | {} tsubaki | | {} -ユーザ(ロール)tsubakiにスーパーユーザ、ロールを作成できる、DBを作成できるを付与してみます。 postgres=# ALTER ROLE tsubaki WITH SUPERUSER CREATEDB CREATEROLE; ALTER ROLE postgres=# \du ロール一覧 ロール名 | 属性 | メンバー ----------+--------------------+---------- postgres | スーパーユーザ | {} : ロールを作成できる : DBを作成できる sakura | スーパーユーザ | {} tsubaki | スーパーユーザ | {} : ロールを作成できる : DBを作成できる * ALTER ROLEの各種オプション [#l3c5d485] psqlコマンドでログインし、\hコマンドでALTER ROLEの説明を表示しました。~ 以下のようにオプションが多数ありますので、必要に応じて設定してください。 postgres=# \h ALTER ROLE コマンド: ALTER ROLE 説明: データベースのロールを変更する 書式: ALTER ROLE ロール名 [ [ WITH ] オプション [ ... ] ] オプションは以下のいずれか: SUPERUSER | NOSUPERUSER | CREATEDB | NOCREATEDB | CREATEROLE | NOCREATEROLE | CREATEUSER | NOCREATEUSER | INHERIT | NOINHERIT | LOGIN | NOLOGIN | CONNECTION LIMIT 最大接続数 | [ ENCRYPTED | UNENCRYPTED ] PASSWORD 'パスワード' | VALID UNTIL 'タイムスタンプ' ALTER ROLE ロール名 RENAME TO 新しい名前 ALTER ROLE ロール名 SET 設定パラメータ名 { TO | = } { 値 | DEFAULT } ALTER ROLE ロール名 SET 設定パラメータ名 FROM CURRENT ALTER ROLE ロール名 RESET 設定パラメータ名 ALTER ROLE ロール名 RESET ALL #htmlinsertpcsp(db-btm.html,db-sp.html)
タイムスタンプを変更しない
#navi(../) * PostgreSQLでユーザのロールを変更する・ALTER ROLE, ALTER USER [#la2b390d] 作成したユーザのALTER ROLEをつかってロールを変更する操作例を以下に記します。~ (ALTER USERはALTER ROLEの別名になっています。したがって、ALTER ROLEをALTER USERにしても同様の動作になります。) 使用したOSはCentOS6になります。~ また、使用したPostgreSQLのバージョンは以下の通りです。 postgres=# select version(); version ------------------------------------------------------------------------------------------------------------------ PostgreSQL 8.4.13 on x86_64-redhat-linux-gnu, compiled by GCC gcc (GCC) 4.4.6 20120305 (Red Hat 4.4.6-4), 64-bit (1 行) #contents #htmlinsertpcsp(db-top.html,db-sp.html) * 関連記事・関連資料 [#p92ac838] -[[PostgreSQLでテーブルに対してのアクセス権限を設定する・GRANT,REVOKE>PostgreSQL/テーブルに対してのアクセス権限を設定する・GRANT,REVOKE]] * ユーザを作成しALTER ROLEしてみる [#y72fbaf5] ユーザを作成して、ALTER ROLEでスーパーユーザ権限などを付与してみます。 -ユーザを追加し、ロール一覧を確認 postgres=# create user sakura with password 'sakurapass'; CREATE ROLE postgres=# create user tsubaki with password 'tsubakipass'; CREATE ROLE postgres=# \du ロール一覧 ロール名 | 属性 | メンバー ----------+--------------------+---------- postgres | スーパーユーザ | {} : ロールを作成できる : DBを作成できる sakura | | {} tsubaki | | {} -ユーザ(ロール)sakuraにスーパーユーザ権限を付与する ALTER ROLEを使って、sakuraにスーパーユーザ権限を付与しました。 postgres=# ALTER ROLE sakura WITH SUPERUSER; ALTER ROLE postgres=# \du ロール一覧 ロール名 | 属性 | メンバー ----------+--------------------+---------- postgres | スーパーユーザ | {} : ロールを作成できる : DBを作成できる sakura | スーパーユーザ | {} tsubaki | | {} -ユーザ(ロール)tsubakiにスーパーユーザ、ロールを作成できる、DBを作成できるを付与してみます。 postgres=# ALTER ROLE tsubaki WITH SUPERUSER CREATEDB CREATEROLE; ALTER ROLE postgres=# \du ロール一覧 ロール名 | 属性 | メンバー ----------+--------------------+---------- postgres | スーパーユーザ | {} : ロールを作成できる : DBを作成できる sakura | スーパーユーザ | {} tsubaki | スーパーユーザ | {} : ロールを作成できる : DBを作成できる * ALTER ROLEの各種オプション [#l3c5d485] psqlコマンドでログインし、\hコマンドでALTER ROLEの説明を表示しました。~ 以下のようにオプションが多数ありますので、必要に応じて設定してください。 postgres=# \h ALTER ROLE コマンド: ALTER ROLE 説明: データベースのロールを変更する 書式: ALTER ROLE ロール名 [ [ WITH ] オプション [ ... ] ] オプションは以下のいずれか: SUPERUSER | NOSUPERUSER | CREATEDB | NOCREATEDB | CREATEROLE | NOCREATEROLE | CREATEUSER | NOCREATEUSER | INHERIT | NOINHERIT | LOGIN | NOLOGIN | CONNECTION LIMIT 最大接続数 | [ ENCRYPTED | UNENCRYPTED ] PASSWORD 'パスワード' | VALID UNTIL 'タイムスタンプ' ALTER ROLE ロール名 RENAME TO 新しい名前 ALTER ROLE ロール名 SET 設定パラメータ名 { TO | = } { 値 | DEFAULT } ALTER ROLE ロール名 SET 設定パラメータ名 FROM CURRENT ALTER ROLE ロール名 RESET 設定パラメータ名 ALTER ROLE ロール名 RESET ALL #htmlinsertpcsp(db-btm.html,db-sp.html)
テキスト整形のルールを表示する