Azure Database for PostgreSQLとはMicrosoft Azureが提供するフルマネージドサービスです。オープンソースのリレーショナルデータベース管理システムであるPostgreSQLを使用して、大規模なデータ管理や複雑なデータ操作などができます。
Azure Database for PostgreSQLへ接続を行うには、pgAdminやpsqlなどの任意のクライアントツールを使用します。
今回はpsqlを使用してAzure Database for PostgreSQLへ接続を行い、新しいユーザーを作成する手順について解説していきます。
psqlのインストール
まず、Azure Database for PostgreSQLに接続したいクライアントPCにて、以下サイトへアクセスします。
https://www.postgresql.org/download/
以下のように、OS毎にインストーラーが準備されているため、環境にあったOSをクリックします。今回はWindowsを選択します。

OSを選択すると、以下の通り「Download the installer」が表示されるため、該当箇所をクリックします。

「Download the installer」をクリック後、以下の通りPostgreSQL Versionが一覧で表示されるため、ダウンロードしたいバージョンからインストーラーを取得します。

インストーラーを取得後は、画面に従いpsqlのインストールを行います。
手順に沿って進めていくと「Select Components」画面が表示されるため、今回使用するコンポーネント名「Command Line Tools」を選択し、インストール手順を進めます。
※既にパソコンでコンポーネントがインストールされている場合は、以下の通りコンポーネント名がグレーアウトで表示されます。インストール手順を進めていく上で同様の画面が表示される場合はインストール不要となりますので、右下の「Cancel」をクリックしてインストール作業を終了してください。

Azure Database for PostgreSQLへの接続手順
Azure Database for PostgreSQLへの接続手順を説明します。
先ほどpsqlをインストールしたPCにてコマンドプロンプトを開き、以下コマンドを入力して対象のAzure Database for PostgreSQLへ接続を行います。
cd /d [psqlがインストールされているファイルパス]
psql --host=[postgresqlname].postgres.database.azure.com --port=5432 --username=[username] --dbname=postgres
入力後、以下コマンドが表示されるので、パスワードを入力します。
Password for user [username]:[password]
以下コマンドが表示されていることを確認し、対象のAzure Database for PostgreSQLへのログインは完了です。
postgres=>
ユーザー作成手順
ユーザー作成手順を説明します。
以下コマンドを入力し、ユーザーを作成します。
CREATE USER [username] PASSWORD '[password]' ;
上記コマンドが問題なく入力できていれば、以下が表示されます。
CREATE ROLE
以下コマンドを入力すると、現在作成されているユーザーを確認することができます。
/du
コマンドを入力すると、以下のようにユーザー一覧が表示されます。問題なくユーザーが作成できていることを確認し、ユーザー作成手順は完了です。
List of roles
Role name | Attributes
azure_pg_admin | Cannot login
azuresu | Superuser, Create role, Create DB, Replication, Bypass RLS
replication | Replication
testadmin | Create role, Create DB, Bypass RLS
testuser |
権限付与手順
権限付与手順を説明します。
以下コマンドを入力し、対象ユーザーに権限を付与します。
ALTER ROLE [username] WITH [付与したい権限] ;
権限には「Create role」や「Create DB」、「Bypass RLS」などがありますので、対象ユーザーに対してどのような権限を付与する必要があるのか事前に整理しておきましょう。
上記コマンドが問題なく入力できていれば、以下が表示されます。
ALTER ROLE
以下コマンドを入力すると、現在作成されているユーザーに付与されている権限を確認することができます。
/du
コマンドを入力すると、以下のようにユーザーに付与されている権限が表示されます。問題なく権限が付与できていることを確認し、権限付与手順は完了です。
List of roles
Role name | Attributes
azure_pg_admin | Cannot login
azuresu | Superuser, Create role, Create DB, Replication, Bypass RLS
replication | Replication
testadmin | Create role, Create DB, Bypass RLS
testuser | Create role
最後に
今回は、psqlを利用して、Azure Database for PostgreSQL環境へ新しいユーザーを作成する手順を紹介いたしました。
参考にしていただけますと幸いです。