PostgreSQL:ユーザー(USER)を作成する方法

こんにちは、さるまりんです。

最近なぜだか何かとPostgreSQLで作業することが増えてます。

データベース接続のためにユーザーを作成する際のメモです。

PostgreSQLでユーザー(USER)を作成

psqlを起動してCREATE USERコマンドで作成するのですが、md5をかけたパスワードをコマンドに渡す方法があるのでその方法でやってみます。

1. md5でパスワード文字列をハッシュ化

md5コマンドで文字列をハッシュ化します

$ md5 -s [パスワードにしたい文字列]
MD5 ("パスワードにしたい文字列") = [ハッシュ化された文字列]

パスワードにした文字列を”salumarinenopassword”とするとこうなります。

$ md5 -s salumarinenopassword
MD5 ("salumarinenopassword") = f162bfc8e758c6632e3bf4d06355377b

2. psqlを管理者権限で起動

$ psql -U postgres -h [ホスト] [データベース]

(※postgresユーザーが管理者として存在する前提です。)

3. CREATE USERをステップ1でできた文字列を指定して実行

CREATE USER [ユーザー名] WITH ENCRYPTED PASSWORD 'md5[ステップ1でできた文字列]'

ユーザー名を”salumarine”、パスワードを”salumarinenopassword”とするとこうです。

CREATE USER salumarine WITH ENCRYPTED PASSWORD 'md5f162bfc8e758c6632e3bf4d06355377b'

(※こんなパスワードのユーザーはどこにもいないので試さないでくださいね。)

PASSWORDを指定する時に「md5」の文字列がハッシュ化された文字列の前にくることをお忘れなくです。

作業しているときに調べてて知ったのですが、同じようにユーザーを作る際にCREATE USERCREATE ROLEというのがあるようです。それについてはまた改めて。

読んでくださってありがとうございます。

ではまた!