Права определяют, что пользователь может делать с данными и с базой данных. Права должны предоставляться с учетом типа работ, выполняемых пользователем, работающим в организации. Участвует ли пользователь в администрировании базы геоданных? Требуется ли пользователю редактировать или создавать данные? Будет ли пользователь только формировать запросы к данным?
Права доступа пользователей устанавливаются на разных уровнях. Этот раздел содержит описание прав доступа к базе данных и набору данных для основных типов пользователей: просматривающих данные, редакторов данных, создателей данных и администраторов базы геоданных.
- В первом разделе перечислены минимальные права, необходимые для каждого типа пользователей.
- Во втором разделе перечислены права, необходимые для создания или обновления базы геоданных.
- Дополнительные права, необходимые для использования различных функций базы геоданных, перечислены в последнем разделе.
Для администрирования прав доступа к базе данных можно использовать инструменты SQL Server или выражения Transact SQL.
Права доступа к наборам данных должны быть предоставлены или отозваны владельцем набора данных с помощью диалогового окна Права доступа или инструмента геообработки Изменить права доступа, который доступен в ArcGIS for Desktop. Инструкции см. в разделе Предоставление и отзыв прав доступа к наборам данных.
Минимальные привилегии
Тип пользователя | Привилегии в базе данных | Привилегии для наборов данных | Примечания |
---|---|---|---|
Пользователь, имеющий право просматривать данные | SELECT | Если все таблицы в базе данных доступны для чтения, вы можете назначить пользователям роль базы данных db_datareader, иначе предоставьте право SELECT для просмотра определенных таблиц и представлений. | |
Редактирование данных |
| Если пользователь редактирует версионные данные через версионное представление, ему должны быть выданы также права SELECT (Выборка), UPDATE (Обновление), INSERT (Вставка) и DELETE (Удаление) в версионном представлении. При использовании диалогового окна Права доступа (Privileges) в ArcGIS для выдачи прав SELECT (Выборка), UPDATE (Обновление), INSERT (Вставка) и DELETE (Удаление) версионных классов объектов, эти права автоматически выдаются в соответствующем версионном представлении. | |
Пользователь, имеющий право на создание данных |
| Пользователи, создающие данные, должны иметь схему по умолчанию с тем же именем, как и их имя пользователя базы данных. Например, для пользователя с именем simon имя схемы по умолчанию должно быть simon. Если это не так, пользователь не сможет создать объекты базы, такие как классы объектов. | |
Администратор базы геоданных | Если администратором базы геоданных является пользователь с именем sde, и если этому пользователю в базе геоданных принадлежат только системные объекты, все что ему нужно – это подключение к базе геоданных, после того, как она создана. Однако, если базу геоданных необходимо обновить, или пользователю sde нужно сбросить подключения или просмотреть всех пользователей базы данных, требуются дополнительные права. | SELECT, INSERT, UPDATE и DELETE для версионных наборов данных |
Права доступа, необходимые для создания или обновления базы геоданных
В таблице ниже перечислены пользователи и привилегии, необходимые для создания или обновления баз геоданных в SQL Server.
Тип базы геоданных | Пользователь и привилегии, необходимые для создания базы геоданных | Пользователь и привилегии, необходимые для обновления базы геоданных |
---|---|---|
База геоданных в схеме sde | Пользователю sde требуются следующие права доступа:
| Для выполнения обновления пользователь sde должен быть добавлен в роль db_owner в базе данных. Другим вариантом является выполнение обновления пользователем (не sde), который включен в роль базы данных db_owner или фиксированную серверную роль sysadmin. |
Схема dbo | Пользователь dbo уже имеет права доступа, необходимые для создания базы геоданных в базе данных. | Пользователь dbo уже имеет права доступа, необходимые для выполнения обновления. Другим вариантом является выполнение обновления пользователем, который включен в роль базы данных db_owner. |
Модель с несколькими пространственными базами данных (всегда в схеме sde) | Не используется: начиная с версии ArcGIS 10.1 нельзя создавать базу геоданных с несколькими пространственными базами данных. | Базу геоданных должен обновлять пользователь (не sde), который включен в фиксированную серверную роль sysadmin. Пользователи sysadmin имеют необходимые права доступа для выполнения обновления. |
Дополнительные привилегии
Дополнительные права доступа к базе геоданных требуются для использования следующей функциональности:
- Для удаления подключений к базе геоданных, администратор (пользователь sde) базы геоданных в схеме sde должен быть добавлен в фиксированную серверную роль processadmin с правами VIEW DEFINITION. Инструмент геообработки Создать многопользовательскую базу геоданных (Create Enterprise Geodatabase) включает пользователя sde в эту роль и наделяет соответствующими привилегиями. Можно отозвать эти права и удалить пользователя из роли processadmin после создания базы геоданных, но если вы это сделаете, пользователь sde не сможет отключать пользователей от базы геоданных.
- Если вы хотите, чтобы пользователи, добавляющие данные, имели возможность видеть существующих пользователей и роли в базе данных, им необходимо присвоить права VIEW DEFINITION. (Эти привилегии назначаются автоматически, если пользователи создаются с помощью инструмента геообработки Создать пользователя базы данных (Create Database User).)
- Пользователь-владелец XML-столбца должен быть наделен правами REFERENCES в полнотекстовом каталоге, используемом для индексирования XML-столбца.
- В случае настройки базы геоданных для использования таблиц совместно используемых файлов журнала всем пользователям базы данных понадобятся права CREATE TABLE.