PostgreSQLは、ロールという概念を使用してデータベースへの接続承認を管理します。 ロールは、その設定方法に応じて、データベースユーザ、またはデータベースユーザのグループとみなすことができます。 ロールはデータベースオブジェクト(例えばテーブル)を所有することができます。 またロールは、どのオブジェクトに誰がアクセスできるかを制御するために、それらのオブジェクトに対しての権限を他のロールに割り当てることができます。 更に、ロールのメンバ資格を他のロールに与えることもできます。 そのため、メンバとなったロールは別のロールに割り当てられた権限を使用することができます。
ロールの概念には、"ユーザ"という概念と"グループ"という概念が含まれます。 PostgreSQLバージョン8.1より前まででは、ユーザとグループは異なる種類の実体として扱われていました。 しかし、現在ではロールしか存在しません。 すべてのロールは、ユーザとして、グループとして、またはその両方として動作することができます。
本章では、ロールの作成と管理の方法について説明します。 様々なデータベースオブジェクト上の権限の効果について、さらに詳細な情報は項5.6に記載されています。