pg_init_privs #
The catalog <structname>pg_init_privs</structname> records information about
the initial privileges of objects in the system. There is one entry
for each object in the database which has a non-default (non-NULL)
initial set of privileges.
pg_init_privsカタログは、システム内のオブジェクトの初期権限についての情報を記録します。
データベース内の初期権限のセットがデフォルトでない(NULLでない)オブジェクトごとに1つの記述があります。
Objects can have initial privileges either by having those privileges set
when the system is initialized (by <application>initdb</application>) or when the
object is created during a <link linkend="sql-createextension"><command>CREATE EXTENSION</command></link> and the
extension script sets initial privileges using the <link linkend="sql-grant"><command>GRANT</command></link>
system. Note that the system will automatically handle recording of the
privileges during the extension script and that extension authors need
only use the <command>GRANT</command> and <command>REVOKE</command>
statements in their script to have the privileges recorded. The
<literal>privtype</literal> column indicates if the initial privilege was
set by <application>initdb</application> or during a
<command>CREATE EXTENSION</command> command.
オブジェクトは、システムが(initdbによって)初期化された時、またはオブジェクトがCREATE EXTENSIONの実行中に作成され、拡張スクリプトがGRANTコマンドを使用して初期権限をシステムにセットする時に初期権限を持つことができます。
システムは、拡張スクリプトの実行中に権限の記録を自動的に処理することや、拡張作成者が権限を記録させるためにスクリプトの中でGRANTとREVOKEステートメントの使用のみを必要とすることに注意してください。
privtype列は、初期権限がinitdbによって設定されたか、もしくはCREATE EXTENSIONコマンド実行中に設定されたかを表示します。
Objects which have initial privileges set by <application>initdb</application> will
have entries where <literal>privtype</literal> is
<literal>'i'</literal>, while objects which have initial privileges set
by <command>CREATE EXTENSION</command> will have entries where
<literal>privtype</literal> is <literal>'e'</literal>.
initdbによって設定された初期権限を持つオブジェクトは、privtypeが'i'で、CREATE EXTENSIONによって設定された初期権限を持つオブジェクトは、privtypeが'e'になります。
表52.28 pg_init_privsの列
Column Type 列 型 Description 説明 |
|---|
The OID of the specific object 特定のオブジェクトのOID |
The OID of the system catalog the object is in オブジェクトが存在するシステムカタログのOID |
For a table column, this is the column number (the
<structfield>objoid</structfield> and <structfield>classoid</structfield> refer to the
table itself). For all other object types, this column is
zero.
テーブル列においては、列番号です( |
A code defining the type of initial privilege of this object; see text オブジェクトの初期権限の型を設定しているコード。 テキストを参照してください |
The initial access privileges; see <xref linkend="ddl-priv"/> for details 初期アクセス権限。 詳細は5.8を参照してください |