| Документация по PostgreSQL 9.4.1 | |||
|---|---|---|---|
| Пред. | Уровень выше | Глава 34. Информационная схема | След. |
34.56. usage_privileges
Представление usage_privileges описывает права USAGE, назначенные текущей активной роли или текущей активной ролью для различных типов объектов. В PostgreSQL на данный момент это правила сортировки, домены, обёртки сторонних данных, сторонние серверы и последовательности. Оно содержит отдельную строку для каждой комбинации объекта, праводателя и правообладателя.
Так как с правилами сортировки в PostgreSQL не связаны никакие действующие права, в этом представлении показываются фиктивные права USAGE, якобы назначенные владельцем базы роли PUBLIC для всех правил сортировки. Для других типов объектов, однако, в нём показываются фактические права.
В PostgreSQL для последовательностей могут назначаться права SELECT и UPDATE, в дополнение к USAGE. Но это нестандартные права и поэтому в информационной схеме они не видны.
Таблица 34-54. Колонки usage_privileges
| Имя | Тип данных | Описание |
|---|---|---|
| grantor | sql_identifier | Имя роли, давшей право (праводатель) |
| grantee | sql_identifier | Имя роли, которой было дано право (правообладатель) |
| object_catalog | sql_identifier | Имя базы данных, содержащей объект (всегда текущая база) |
| object_schema | sql_identifier | Имя схемы, содержащей объект, если это применимо, иначе пустая строка |
| object_name | sql_identifier | Имя объекта |
| object_type | character_data | COLLATION или DOMAIN или FOREIGN DATA WRAPPER или FOREIGN SERVER или SEQUENCE |
| privilege_type | character_data | Всегда USAGE |
| is_grantable | yes_or_no | YES, если право может передаваться, или NO в противном случае |
| Пред. | Начало | След. |
| udt_privileges | Уровень выше | user_defined_types |
| PostgreSQL 9.4.1 Documentation | |||
|---|---|---|---|
| Prev | Up | Chapter 34. The Information Schema | Next |
34.56. usage_privileges
The view usage_privileges identifies USAGE privileges granted on various kinds of objects to a currently enabled role or by a currently enabled role. In PostgreSQL, this currently applies to collations, domains, foreign-data wrappers, foreign servers, and sequences. There is one row for each combination of object, grantor, and grantee.
Since collations do not have real privileges in PostgreSQL, this view shows implicit non-grantable USAGE privileges granted by the owner to PUBLIC for all collations. The other object types, however, show real privileges.
In PostgreSQL, sequences also support SELECT and UPDATE privileges in addition to the USAGE privilege. These are nonstandard and therefore not visible in the information schema.
Table 34-54. usage_privileges Columns
| Name | Data Type | Description |
|---|---|---|
| grantor | sql_identifier | Name of the role that granted the privilege |
| grantee | sql_identifier | Name of the role that the privilege was granted to |
| object_catalog | sql_identifier | Name of the database containing the object (always the current database) |
| object_schema | sql_identifier | Name of the schema containing the object, if applicable, else an empty string |
| object_name | sql_identifier | Name of the object |
| object_type | character_data | COLLATION or DOMAIN or FOREIGN DATA WRAPPER or FOREIGN SERVER or SEQUENCE |
| privilege_type | character_data | Always USAGE |
| is_grantable | yes_or_no | YES if the privilege is grantable, NO if not |