-
Notifications
You must be signed in to change notification settings - Fork 1
Расширенные атрибуты
Расширенные атрибуты файловой системы (https://en.wikipedia.org/wiki/Extended_file_attributes) в SQLFuse располагаются в пространстве имён user.sqlfuse
.
Расширенные атрибуты используются для отображения:
- параметров объектов;
- определений представлений VIEW;
- привилегий для ролей и пользователей на объекты БД.
Для ознакомления с командами управления расширенными атрибутами для систем стандарта Unix используйте man xattr
.
Доступ к параметрам объектов БД в SQLFuse осуществляется через расширенные атрибуты:
-
object_id
- уникальный идентификатор объекта в БД (sys.objects
,OBJECT_ID()
), для колонки отображается идентификатор таблицы. -
type
- двух символьный код, определяющий тип объекта. Подробнее с типами в SQLFuse ознакомьтесь на wiki-странице Типы объектов. -
trigger.is_disabled
- у триггеров отображает состояние: 1 - отключён, 0 - включён.
SQL-определение представлений в SQLFuse представлено через расширенные атрибуты для каталога, который соответствует отображаемому представлению на файловой системе, и находится в ключе viewdef
. Для генерирования текста определения используется хранимая процедура EXEC sp_helptext
.
Права для ролей и пользователей на объекты БД отображаются с префиксом user.sqlfuse.rights
. К префиксу прибавляются наименования пользователей и ролей, сокращенные типы привилегий и состояние.
Так, например, право для пользователя alice
на выборку из таблицы Person.Address
будет выглядеть следующий образом: user.sqlfuse.rights.alice.G.SL
, где G
- GRANT
, SL
- SELECT
. Подробнее ознакомиться с привилегиями и используемым сокращениями можно на странице https://technet.microsoft.com/en-us/library/ms188367.aspx .