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

PolarDB:アカウントの権限

最終更新日:Sep 03, 2026

このトピックでは、特権アカウントと標準アカウントの権限について説明します。

概要

クラウドデータベースのセキュリティを確保するには、ユーザー権限を管理および制限する必要があります。ユーザーは、自身のタスクに必要な権限のみを持つべきであり、その範囲を超える権限を持つべきではありません。そのため、クラウドデータベースでは、ロールベースアクセス制御 (RBAC) モデルを使用して一般ユーザーの権限を管理します。このモデルでは、異なるユーザーに異なるロールが割り当てられ、各ロールには特定の権限があり、ユーザーは実行する必要のある操作に基づいてロールに割り当てられます。このアプローチにより、ユーザー権限を効果的に制御し、データベースのセキュリティを確保します。

現在、データベースはユーザー向けに特権ユーザーと標準ユーザーの 2 つのロールを提供しています。

  • 特権ユーザーは、主にデータベースの作成、基本権限の付与、パブリケーションとサブスクリプションの作成などの管理タスクに使用されます。

  • 標準ユーザーは、さまざまなビジネスロジック操作を実行するために使用される基本的なロールです。

PolarDB は、この権限システムを使用してデータベース操作タイプを構築し、アクセス制御モデルを実装することで、クラウドデータベースの権限セキュリティをより効果的に保護します。

特権ユーザーの権限

アカウントタイプ

権限

特権アカウント

データベースの作成。詳細については、「データベースの作成」をご参照ください。

拡張の作成。詳細については、「拡張」をご参照ください。

自分自身の権限以下の権限を持つユーザーの作成 詳細については、「ユーザーの作成」をご参照ください。

イベントトリガーの作成と使用。詳細については、「トリガーの作成」をご参照ください。

タイプの作成と変更。詳細については、「オブジェクトタイプの作成」をご参照ください。

ガベージコレクションコマンドの呼び出し。詳細については、「ガベージコレクションの仕組み」をご参照ください。

外部データラッパー (FDW) の作成と変更。詳細については、「oss_fdw を使用した外部データファイルの読み書き」をご参照ください。

ROWID で使用されるシーケンスの変更。詳細については、「ALTER SEQUENCE」をご参照ください。

パブリケーションとサブスクリプションの作成。例:

-- パブリケーションの作成
CREATE PUBLICATION my_publication FOR TABLE test_t;

-- サブスクリプションの作成
CREATE SUBSCRIPTION my_subscription
CONNECTION 'channel_name=XXXX dbname=XXXX user=XXXX password=XXXX'
PUBLICATION my_publication;
説明

サブスクリプションを作成するには channel が必要です。チャンネルを作成するには、「ネットワークチャンネル」をご参照ください。ネットワークチャンネルを使用してサブスクリプションを作成する際にエラーが発生した場合は、「お問い合わせ」をご参照ください。

システムコンテキストの作成。例:

CREATE CONTEXT hr_context USING test_package;

2フェーズトランザクションの使用。例:

-- session_1
begin;
insert into t values (1,'a');
prepare transaction 'test_1';

-- session_2
commit prepared 'test_1';
-- またはロールバック
rollback prepared 'test_1';

信号の送信。例:

-- 4300 はスーパーユーザーではないプロセスです
select pg_cancel_backend(4300);
select pg_terminate_backend(4300);

バックグラウンドプロセスの状態の表示。例:

select * from pg_stat_activity;

オブジェクトの名前変更。例:

RENAME test_table TO new_test_table;

特権ユーザーと標準ユーザーの両方で利用できない権限

一部の権限はデータベースにセキュリティリスクをもたらします。そのため、現在、すべてのユーザーに対して以下の権限が禁止されています。

アカウントタイプ

権限

特権アカウント/標準アカウント

フォルダの作成。

システムパラメーターの変更。

表領域の作成。

スーパーユーザープロセスの強制終了。

信頼できない言語の実行。

説明

plsql は信頼できる言語です。他のすべての言語は信頼できないため、実行できません。

ユーザーグループの権限

PolarDB for PostgreSQL (Compatible with Oracle) は PostgreSQL 上に構築されており、特定の PostgreSQL グループロールを継承しています。以下のセクションでは、これらのグループ権限について詳しく説明します。これらの権限と前述の特権ユーザーの権限は和集合 (UNION) を形成し、最終的な権限セットは両方の組み合わせになります。

ロール名

ステータス

説明

pg_read_all_stats & pg_stat_scan_tables

完全

統計関連の権限。完全に所有。

pg_signal_backend

完全

他のプロセスへの信号送信。完全に所有。

pg_polar_superuser

完全

特権ユーザーグループ。特権ユーザーの包括的な権限セットが含まれます。完全に所有。

pg_polar_replication

完全

ユーザーがストリーミングレプリケーションを使用するための権限を提供します。完全に所有。

pg_monitor

完全

監視権限。ローカルファイルへの読み書きアクセスはブロックされます。

pg_read_all_data & pg_write_all_data

制限付き

任意のテーブルに対する読み書き権限。任意のユーザーテーブルの読み書き、およびほとんどのシステムテーブルの読み取りが可能です。セキュリティ上の理由から、一部のシステムテーブルへのアクセスはブロックされます。

pg_read_all_settings

制限付き

任意のパラメーターに対する読み取り権限。権限の範囲内のパラメーターを読み取ることができます。セキュリティ上の理由から、一部のパラメーターへのアクセスはブロックされます。

pg_read_server_files & pg_write_server_files

ブロック

ローカルファイルへの読み書き権限はサポートされていません。

pg_execute_server_program

ブロック

バイナリコマンドの実行権限はサポートされていません。