0

apt-getを使用してデフォルトでpostgreSQLをインストールしましたが、「postgres」というユーザーが自動的に追加されたと思います。

  1. postgresでソートしたいデータベースが1つしかないので、このデータベース用に別のユーザーアカウントを作成する意味はありますか、それともpostgreSQL "postgres"でインストールされたものをそのまま使用する必要がありますか?

  2. 私のために作られたユーザーアカウントpostgres、それはある種のデフォルトのパスワードを与えられていますか?自分のパスワードを入力することをお勧めしますか?

4

2 に答える 2

1

編集:私は質問を誤解しました、OPはシステムユーザーではなく内部ユーザーについて尋ねています

元の回答:サーバーを実行するためのシステムユーザー

Linuxボックスで実行されているほとんどのサービスには、標準のセキュリティ慣行として、独自の独立したユーザーが与えられています。postgreSQLサーバーが危険にさらされた可能性があります-あなたがミスをしたか、postgresqlに脆弱性があったか、または何でも-攻撃者はpostgresqlサーバーを実行しているユーザーに許可されたリソースにのみアクセスできます。そのユーザーがrootの場合、マシンを失います。そのユーザーがあなたのユーザーである場合、あなたはそれほど多くを失うことはありません。そのユーザーがpostgresである場合、これは何にも最小限のアクセスしかありません。データベースを失います。それだけです。

それで:

  1. 正確には、そのサーバープロセスがホストしているものに関係なく、postgreSQLサーバーに必要なのは1人のユーザーだけです。ユーザーが自動的に作成された場合(そのように聞こえます)、この手順ですべて設定できます。手動で作成する必要がある場合(そうでないように聞こえます)、新しいユーザーが必要なものだけにアクセスできるように、アクセス許可も変更する必要があります。

  2. そのアカウントは、直接ログインできない可能性があります。パスワードがある場合は、ランダムなデータがたくさんあります。アカウントを使用するには、rootとして開始してから、自発的にに「ダウングレード」する必要がありますpostgres。サーバーの場合、rootはpostgresの「名前で」サーバーを起動します。そのままにしておくことをお勧めします。

2番目の回答:データベースユーザー

サーバーを実行すると、データベースにアクセスするために、サーバーは独自のユーザーセットを保持します。そこで使用できる最も単純なアーキテクチャは、完全な権限を持つベースユーザーにすべてを実行させることです。これは機能しますが、これを外部でホストしているかどうかはお勧めしません。より望ましい解決策は、OSのセットアップ方法と同様に、ユーザーのセットを用意することです。つまり、特定のタスクを実行するユーザーの集まりと、それらすべてを統治する1人の管理者ユーザーです。それは言った:

  1. 必ずしもそうする必要はありませんが、これをどこでもホストする場合(個人的な目的で使用するだけでなく、世界中からアクセスできる場合)、権限が制限されている追加のユーザーにアドバイスします。

  2. http://archives.postgresql.org/pgsql-admin/2001-10/msg00192.php

    デフォルトではパスワードはありません。ALTERUSERで作成します。

    パスワードを使用するようにpg_hba.confが設定されていない限り、パスワードは有効になりません。そうであり、postgresにパスワードを割り当てていない場合、postgresとして接続することはできません。

于 2012-12-09T18:13:41.723 に答える
1

再1)

インストール中に作成されるデフォルトのデータベースユーザーは「スーパーユーザー」であり、同じ理由で「ルート」として日常業務を行うべきではなく、DBMSでスーパーユーザーを扱うべきではありません。したがって、答えは明確です。はい、2番目のユーザーを作成してください。そのロールにデフォルトデータベース(postgresとも呼ばれる)に対するすべての権限を付与できるため、2番目のデータベースは必要ありません。

ユーザーの作成方法と特権の付与方法の詳細については、次のマニュアルを参照してください。

re 2)

Linuxについてはよくわかりませんが、通常はインストール時にパスワードの入力を求められるはずです。インストールのある時点で、initdb実行にパスワードが必要なコマンドを使用して、新しいデータディレクトリが初期化されます。

パスワードがわからない場合は、postgres linuxアカウントにログインpsqlすると、パスワードを指定せずに実行できる可能性があります。これにより、データベースのパスワードをリセットして、新しいユーザーを作成できます。

ユーザーと認証の詳細については、マニュアルを参照してください。

于 2012-12-09T18:31:07.723 に答える