PG_DEFAULT_ACL - Amazon Redshift

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

PG_DEFAULT_ACL

デフォルトのアクセス権限に関する情報を格納します。デフォルトのアクセス権限の詳細については、「ALTER DEFAULT PRIVILEGES」参照してください。

PG_DEFAULT_ACL はすべてのユーザーに表示されます。スーパーユーザーはすべての行を表示できます。通常のユーザーは自分のデータのみを表示できます。詳細については、「システムテーブルとビューのデータの可視性」を参照してください。

テーブルの列

列名 データ型 説明
defacluser integer リストされている権限が適用されるユーザーの ID。
defaclnamespace oid デフォルト権限が適用されるスキーマのオブジェクト ID。スキーマが指定されていない場合、デフォルト値は 0 です。
defaclobjtype character

デフォルト権限が適用されるオブジェクトの型。有効な値は次のとおりです。

  • r-リレーション (テーブルまたはビュー)

  • f: 関数

  • p:ストアド・プロシージャ

defaclacl aclitem[]

指定されたユーザーまたはユーザーグループとオブジェクト型のデフォルト権限を定義する文字列。

権限がユーザーに付与される場合、文字列は次のようになります。

{ username=privilegestring/grantor }

username

権限が付与されるユーザーの名前。username を省略すると、権限は PUBLIC に付与されます。

権限がユーザーグループに付与される場合、文字列は次のようになります。

{ "group groupname=privilegestring/grantor" }

privilegestring

どの権限を付与するかを指定する文字列。

有効な値は次のとおりです。

  • R:選択(読み取り)

  • A-挿入 (付加)

  • w:更新(書き込み)

  • d:削除

  • x:外部キー制限(REFERENCES)を作成する権限を付与します。

  • X:実行

  • * — 前述の権限を付与されるユーザーが、他のユーザーにも同じ権限を付与できる (WITH GRANT OPTION) ことを示します。

grantor

権限を付与したユーザーの名前。

次の例は、ユーザー admin が WITH GRANT OPTION を含むすべての権限をユーザー dbuser に付与したことを示します。

dbuser=r*a*w*d*x*X*/admin

Example

次のクエリはデータベースに対して定義されているすべてのデフォルト権限を返します。

select pg_get_userbyid(d.defacluser) as user, n.nspname as schema, case d.defaclobjtype when 'r' then 'tables' when 'f' then 'functions' end as object_type, array_to_string(d.defaclacl, ' + ') as default_privileges from pg_catalog.pg_default_acl d left join pg_catalog.pg_namespace n on n.oid = d.defaclnamespace; user | schema | object_type | default_privileges -------+--------+-------------+------------------------------------------------------- admin | tickit | tables | user1=r/admin + "group group1=a/admin" + user2=w/admin

前の例の結果は、ユーザー admintickit スキーマで作成するすべての新しいテーブルにおいて、adminuser1 には SELECT 権限を、group1 には INSERT 権限を、user2 には UPDATE 権限を付与することを示します。