すべてのプロダクト
Search
ドキュメントセンター

:ユーザー管理と権限管理

最終更新日:Mar 19, 2020

ユーザー管理権限管理を行うことで、AnalyticDB for PostgreSQL データベースを保護できます。このドキュメントでは、それぞれの管理方法を説明します。

ユーザー管理

インスタンスの作成時、初期ユーザーの名前とパスワードを指定する必要があります。初期ユーザーは root ユーザーです。インスタンスの準備ができたら、この root ユーザーアカウントを使ってデータベースに接続できます。psql(PostgreSQL または Greenplum のクライアントツール) を使用してデータベースに接続した後、\du+ コマンドを実行すると、すべてのユーザーの情報が表示されます。次に例を示します。

注:root ユーザー以外のユーザー (aurora や replicator など)も作成されます。これらのユーザーは、内部管理に使用されるスーパーユーザーです。

  1. postgres=> \du+
  2. List of roles
  3. Role name | Attributes | Member of | Description
  4. --------------+-----------------------------------+-----------+---------------
  5. root_user | | | rds_superuser
  6. ...

AnalyticDB for PostgreSQL では、スーパーユーザー権限を利用できませんが、同等のロールである RDS_SUPERUSER (ApsaraDB for RDS (PostgreSQL) の権限システムと同じ) を提供します。したがって、root ユーザー (前述の例の root_user など) には、RDS_SUPERUSER 権限があります。権限は、ユーザーの説明を表示することで確認できます。

root ユーザーには次の権限があります。

  • CREATEROLE、CREATEDB、および LOGIN 権限 (SERUSUSER 権限は含まれません)。root ユーザーアカウントを使用してデータベースやユーザーを作成できます。

  • 他の非スーパーユーザーのデータテーブルの表示および変更、SELECT、UPDATE、DELETE、および 所有者変更などの操作の実行。

  • 他の非スーパーユーザーの接続情報の表示、SQL 構文の取り消し、および接続の終了。

  • CREATE EXTENSION コマンドで拡張機能を作成したり、DROP EXTENSION コマンドで拡張機能を削除したりできます。

  • RDS_SUPERUSER 権限を持つ他のユーザーを作成します。以下に例を示します。

    1. CRATE ROLE root_user2 RDS_SUPERUSER LOGIN PASSWORD 'xyz' ;

権限管理

データベース、スキーマ、テーブルレベルで権限を管理できます。たとえば、あるユーザーにテーブルの読み取り権限を付与し、変更権限を無効にする場合、以下の例を使用できます。

  1. GRANT SELECT ON TABLE t1 TO normal_user1;
  2. REVOKE UPDATE ON TABLE t1 FROM normal_user1;
  3. REVOKE DELETE ON TABLE t1 FROM normal_user1;

関連情報

ユーザー管理方法や権限管理方法の詳細は、「Managing Roles and Privileges」をご参照ください。