web-dev-qa-db-ja.com

PostgreSQLユーザーが自分のパスワードを変更できないようにする方法はありますか?

私はPotsgreSQLサーバーを管理していますが、最近、「非スーパーユーザー」ユーザーが、安全でないパスワードに割り当てた安全なパスワードを変更できる可能性があることに気付きました。

REVOKEドキュメントで検索しましたが、それを防ぐ方法が見つかりませんでした。可能です?

前もって感謝します!

7
ericgcc

私の知る限り、ユーザーが自分のパスワードを変更するのを防ぐ方法はありません。 PostgreSQLメーリングリスト の場合については(かなり前に)議論されており、私が覚えているすべての回答は基本的に「いいえ、できません」

ただし、 passwordcheck と呼ばれるcontribモジュールがあり、その目的はパスワードのstrengthを保証することです。それがあなたが望むものであれば(@RDFozzによってすでにコメントされているように)。

ドキュメントから:

passwordcheckモジュールは、ユーザーがCREATE ROLEまたはALTER ROLEで設定されている場合は常にユーザーのパスワードをチェックします。パスワードが弱すぎると見なされた場合、パスワードは拒否され、コマンドはエラーで終了します。

このモジュールを有効にするには、'$libdir/passwordcheck'shared_preload_librariespostgresql.confを追加してから、サーバーを再起動します。

自分でモジュールを使用したことはありません。

6
joanolo