はじめに
多くの場合、データベースを扱う際にはユーザーを作成および削除できる必要があります。複数のメンバーがデータベースへのアクセスを必要とするチームで作業する場合でも、データベースの権限をシミュレートするためにテストユーザーを作成および削除する場合でも、データベースユーザーの追加と削除の方法を知ることは重要です。
この短いガイドでは、PostgreSQLでデータベースユーザーを作成・削除する基本を説明します。これらのコマンドを習得すれば、データベースアクセスを付与し、将来のロール管理の基礎を築く準備ができます。
PostgreSQLユーザーを作成するには?
PostgreSQLには、CREATE USER
psql
コマンドと、コマンドライン用のcreateuser
があります。どちらのオプションも新しいデータベースユーザーアカウントを定義します。ユーザーを作成するには、データベースクラスターのスーパーユーザーロールである必要があります。または、CREATE ROLE
権限を持つユーザーも新しいユーザーを作成できます。
The basic syntax for createuser
looks like this
createuser <options>
...そしてCREATE USER
の場合
CREATE USER <name> <options>
どちらの方法のオプションコンポーネントでは、このユーザーがデータベースを作成できるか、スーパーユーザーであるか、サーバーに接続する際にパスワードが必要かなどのパラメータを定義できます。
コマンドライン構文は、user1
を作成するのに次のような形になります
createuser --createdb --password user1
ユーザーの作成に加えて、ユーザーが指定された方法でのみデータベースを操作できるように、付与できるさまざまな権限を知っておくことが重要です。このガイドでは基本的な内容のみを扱いますが、より高度な設定についてはPostgreSQLでの権限付与について詳しく読むことができます。
PostgreSQLユーザーを削除するには?
ユーザーを作成できるようになった今、そのアクセスが不要になった場合にユーザーを削除する方法も知っておくことが重要です。ユーザーの作成と同様に、削除する方法は2つあります。コマンドラインユーティリティdropuser
またはpsql
コマンドDROP USER
の両方を使用できます。
The basic syntax for dropuser
is
dropuser <options>
ユーザーを削除するためにログインするユーザー名や、ユーザーが存在する場合の条項を含めるなど、追加のオプションをパラメータに含めることができます。
基本的なpsql
コマンドオプションの構文は次のようになります
DROP USER <name> <options>
コマンドラインを使用した一般的な構文は次のようになります
dropuser --if-exists user1
まとめ
このクイックガイドでは、PostgreSQLデータベースのユーザー作成と削除の基本、およびいくつかの追加オプションについて説明しました。
ユーザーが作成されたら、PostgreSQLでのユーザーロール管理やユーザー認証についてさらに深く掘り下げた情報記事があります。