関数名 | 戻り値 | 説明 |
---|---|---|
pgx_get_attribute_of_objects(confidential_matrix_name varchar) | setof record | 指定した機密マトリクスに登録されているすべての機密オブジェクトに関して、機密マトリクスで規定されている属性と、実際にデータベース上で設定されている属性の表を返却します。表の形式は、“pgx_get_attribute_of_objectsが返却する表”を参照してください。 指定された機密マトリクスの機密管理ロールだけが、この関数を実行できます。 |
pgx_get_attribute_of_roles(confidential_matrix_name varchar) | setof record | 指定した機密マトリクスに登録されているすべてのロールについて、機密マトリクスにて規定されている属性と、実際にシステムカタログで設定されている属性の表を返却します。表の形式は、“pgx_get_attribute_of_rolesが返却する表”を参照してください。 指定された機密マトリクスの機密管理ロールだけが、この関数を実行できます。 |
pgx_get_privileges_on_level_and_group(confidential_matrix_name varchar, confidential_level_name varchar, confidential_group_name varchar) | setof record | 指定された機密レベルに登録されている機密オブジェクトと、指定された機密グループに登録されているロールの組み合わせについて、以下を比較できるような一覧の表を返却します。表の形式は、“pgx_get_privileges_on_level_and_groupが返却する表”を参照してください。
指定された機密マトリクスの機密管理ロールだけが、この関数を実行できます。 |
pgx_get_privileges_on_object(confidential_matrix_name varchar, object_name json) | setof record | 指定された機密オブジェクトについて、以下を比較できるような一覧の表を返却します。表の形式は、“pgx_get_privileges_on_objectが返却する表”を参照してください。
指定された機密マトリクスの機密管理ロールだけが、この関数を実行できます。 |
pgx_get_privileges_on_role(confidential_matrix_name varchar, role_name json) | setof record | すべての機密オブジェクトについて、以下を比較できるような一覧の表を返却します。表の形式は、“pgx_get_privileges_on_roleが返却する表”を参照してください。
指定された機密マトリクスの機密管理ロールだけが、この関数を実行できます。 |
pgx_get_privileges_on_matrix(confidential_matrix_name varchar) | setof record | 指定された機密マトリックスに登録されたすべてのオブジェクトについて、以下を比較できるような一覧の表を返却します。表の形式は、“pgx_get_privileges_on_matrixが返却する表”を参照してください。
指定された機密マトリクスの機密管理ロールだけが、この関数を実行できます。 |
pgx_get_attribute_of_objectsが返却する表
カラム名 | 型 | 意味 |
---|---|---|
matrix_name | varchar(63) | 機密マトリクス名 |
confidential_level_name | varchar(63) | 機密レベル名 |
object_type | text | 機密オブジェクトの種別 |
object_schema | name | 機密オブジェクトのスキーマ名 |
object_table | name | 機密オブジェクトのテーブル名 |
object_name | text | 機密オブジェクトの名前 |
rowset_expression | json | 機密オブジェクトが行の場合の条件式 |
encrypt_on_matrix | text | 機密マトリクスで規定される暗号化手法と強度 |
encrypt_on_object | text | 機密オブジェクトの実際の暗号化手法と強度 |
pgx_get_attribute_of_rolesが返却する表
カラム名 | 型 | 意味 |
---|---|---|
matrix_name | varchar(63) | 機密マトリクス名 |
confidential_group_name | varchar(63) | 機密グループ名 |
role_name | name | ロールの名前 |
confidential_group_role | bool | 機密グループロールであるか否かを示します。機密グループロールであるならば、trueです。 |
superuser_on_matrix | bool | 機密マトリクスで規定されるSUPERUSER属性 |
superuser_on_role | bool | ロールの実際のSUPERUSER属性 |
createdb_on_matrix | bool | 機密マトリクスで規定されるCREATEDB属性 |
createdb_on_role | bool | ロールの実際のCREATEDB属性 |
createrole_on_matrix | bool | 機密マトリクスで規定されるCREATEROLE属性 |
createrole_on_role | bool | ロールの実際のCREATEROLE属性 |
replication_on_matrix | bool | 機密マトリクスで規定されるREPLICATION属性 |
replication_on_role | bool | ロールの実際のREPLICATION属性 |
bypassrls_on_matrix | bool | 機密マトリクスで規定されるBYPASSRLS属性 |
bypassrls_on_role | bool | ロールの実際のBYPASSRLS属性 |
pgx_get_privileges_on_level_and_group、pgx_get_privileges_on_object、pgx_get_privileges_on_roleおよびpgx_get_privileges_on_matrixが返却する表
カラム名 | 型 | 意味 |
---|---|---|
matrix_name | varchar(63) | 機密マトリクス名 |
confidential_level_name | varchar(63) | 機密レベル名 |
confidential_group_name | varchar(63) | 機密グループ名 |
object_type | text | 機密オブジェクトの種別 |
object_scheme | name | 機密オブジェクトのスキーマ名 |
object_table | name | 機密オブジェクトのテーブル名 |
object_name | text | 機密オブジェクトの名前 |
role_name | name | ロール名 |
privilege_list_on_matrix | text[] | 機密マトリクスの設定により規定されている権限をカンマ区切りで出力する。 |
privilege_list_on_object | text[] | 機密マトリクスの設定により規定されている権限をカンマ区切りで出力する。 |
policy_name | name | 機密オブジェクトがrowset型ではない場合にはNULL。 rowset型の場合にはrowsetの名前(注1) |
policy_setting_on_matrix | jsonb | 機密オブジェクトがrowset型ではない場合にはNULL。 rowset型の場合には、機密マトリクスに設定されているrowsetのポリシー情報(注1) |
policy_setting_on_policy | jsonb | 機密オブジェクトがrowset型ではない場合にはNULL。 Rowset型の場合には、実際のポリシーに設定されている行のポリシー情報(注1) |
注1: rowset型の機密オブジェクトを追加するときには、複数の権限を一度に設定できますが、この表では一つの行で表現されません。例えば、SELECT権限とDELETE権限を設定したならば、SELECT権限を表す行と、DELETE権限を表す行とが出力されます。なぜならば、rowset型のアクセス制御は、PostgreSQLの行レベルセキュリティのPOLICYを使っているからです。この仕様では、SELECT権限のためのPOLICYと、DELETE権限のためのPOLICYは異なります。