は、だから私は、同じ名前Postgresのユーザーがいずれか、またはパスワードなしでログインできる
postgres=# create role paperwork;
postgres=# create database paperwork;
postgres=# grant all privileges on database paperwork to paperwork;
postgres=# ALTER ROLE paperwork WITH LOGIN;
postgres=# ALTER ROLE paperwork WITH PASSWORD 'paperwork';
のデータベースと「事務処理」と呼ばれるユーザーを設定するしかし、それはまだ私がパスワードなしの書類としてログインすることができます
[###@EMOO modules]$ psql --username=paperwork --host=localhost
psql (9.6.3)
Type "help" for help.
paperwork=> \q
と私はパスワードを使用するように強制するとき、それは空白のパスワードを含む任意のパスワードを受け付けます。
[###@EMOO modules]$ psql --username=paperwork --host=localhost --password
Password for user paperwork:
psql (9.6.3)
Type "help" for help.
W私はpgadmin3を開き、暗号化されたパスワードを持っているような "書類"ユーザをクリックします。私はpgadmin3を開くとき
-- Role: paperwork
-- DROP ROLE paperwork;
CREATE ROLE paperwork LOGIN
ENCRYPTED PASSWORD 'md585ff97314dbeb9953b989fd363a8e96f'
NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION;
また、Postgresのパスワードの入力を要求しますが、再度、postgresのパスワードのために何を受け入れます。 (私はpostgresをインストールしたときにpostgresパスワードを設定することを覚えています)ログインするには正しいパスワードが必要なので、どうすればいいですか?それとも、私が完全に欠けているという状況がありますか? 。 。 。リモートログインや何らかの不思議さのためだけにパスワードが必要です。ありがとう。
EDIT:私は/usr/share/postgresql/pg_hba.confを持っていませんでした(実際には私は "locate"コマンドでsudoを使用していなかったので実際に見つかりませんでした) 私は、サンプルファイルから1を作成しました:
ここからこのアイデアを得た/usr/share/postgresql/pg_hba.conf.sample:http://blog.mattsch.com/2012/05/19/postgresql-accepts-any-or-no-password-when-connecting/ 私はそれがMD5認証を持って作ってみましたが、私はまだ同じ問題を抱えています。私が試したことは、私は、その後のPostgreSQLを再起動しますが、まだ同じ問題を抱えている
@[email protected]
# TYPE DATABASE USER ADDRESS METHOD
@[email protected]# "local" is for Unix domain socket connections only
@[email protected] all all @[email protected]
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
# Allow replication connections from localhost, by a user with the
# replication privilege.
@[email protected]#local replication @[email protected] @[email protected]
#host replication @[email protected] 127.0.0.1/32 @[email protected]
#host replication @[email protected] ::1/128 @[email protected]
/usr/share/postgresql/pg_hba.confファイルから以下の通りです。
編集:ありがとうございますAbelisto。その "show config_file"コマンド(pgsqlでログインした後)は私を正しい軌道に乗せます。私のLinuxユーザのコマンドラインから実行される "locate pg_hba.conf"には、postgresディレクトリにある実際の設定ファイルを見つける権限がありませんでした:/ var/lib/postgres/data /ユーザ "書類それを作るためにこれらのラインに/var/lib/postgres/data/pg_hba.confに 『MD5『に』信頼」を私が変更した後、今間違ったパスワードとして拒否されます』:
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all md5
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
は、おそらくに解決マークしますちょうどカップルの事をテストしたい。
を提供していない場合
は5はpostgresとしてログインし、何が必要ユーザーのパスワード変更は、ユーザーが拒否されます'psql'はあなたの設定がどこにあるかを見つける' show config_file; 'を実行します。 – Abelisto
Stack Overflowは、プログラミングと開発に関する質問のサイトです。この質問は、プログラミングや開発に関するものではないので、話題にはならないようです。ヘルプセンターの[ここではどのトピックを参照できますか](http://stackoverflow.com/help/on-topic)を参照してください。おそらく、[スーパーユーザ](http://superuser.com/)または[データベース管理者スタックエクスチェンジ](http://dba.stackexchange.com/)がより良い場所になるでしょう。 – jww
ああ、申し訳ありませんが、どうすればいいですか?私はここにこれを残すのですか?または私はそれを削除し、データベーススタック交換で再投稿すべきですか? – Zendasi