PostgreSQLでパスワード入力をしないで済むpgpassについて




PostgreSQLのパスワード入力

PostgreSQLには大きく分けて3つのパスワード設定方法があります。

  1. インライン入力
  2. PGPASSWORD環境変数による入力
  3. .pgpass設定ファイルによる入力

それぞれ説明していきます。

インライン入力

これは一番簡単な方法でpsqlを使うときに使用する方法ですね。psqlを実行したあとにパスワードを直接入力します。

$ psql -U sample_user
password

PGPASSWORD環境変数による入力

シェルスクリプトや、アプリケーションから使うときはインライン入力ができないので環境変数か.pgpassファイルを設定して実行します。

環境設定に設定しておけばpsql実行時に毎回パスワードを入力する必要がなくなるので楽ちんです。しかし、今は推奨されていないので.pgpassを使うことをおすすめします。

$ export PGPASSWORD=password

.pgpass設定ファイルによる入力

これが一番安全で推奨されているパスワードの設定方法です。設定方法は簡単でPostgreSQLにログインするユーザのホームディレクトリに.pgpassを配置するだけです。

中身は下記のようになっています。設定内容もシンプルで簡単にできるのでこれがおすすめです。

//[IP]:[dbname]:[user]:[password]
192.168.56.10:samole_db:sample_user:sample:password

// *を使ってこんな設定も可能
*:*:*:*:password

.pgpassの権限は600にしないと使用できないので忘れずに変更しておいてください。

$  chmod 600 ~/.pgpass
The following two tabs change content below.

髙妻智一

2013年CyberAgent新卒入社 スマホゲームを作る子会社に所属し、サーバーサイドのエンジニアを担当。2年目の終わりから新規子会社の立ち上げに参加し、サーバーサイドのエンジニアリーダーとしてサービースのリリースから運用までを担当。 2018年仮想通貨のスマホウォレットを提供するGinco Incにブロックチェーンエンジニアとして入社。






よく読まれている関連記事はこちら




コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です