Права доступа для баз геоданных в PostgreSQL

Права определяют, что какой-либо пользователь может делать с данными и с базой данных. Права должны предоставляться с учетом типа работ, выполняемых пользователем, работающим в организации. Участвует ли пользователь в администрировании базы геоданных? Требуется ли пользователю редактировать или создавать данные? Или должен ли пользователь только формировать запросы к данным?

Права доступа пользователей устанавливаются на разных уровнях. В этом разделе перечислены необходимые права доступа в базе данных и наборам данных для основных типов пользователей: читателей, редакторов, авторов данных и администраторов базы геоданных.

Индивидуальные пользователи базы данных PostgreSQL именуются подключающимися ролями. Для группировки подключающихся ролей на основе общих задач, которые выполняют пользователи, можно создать групповые роли, добавить роли учетных записей в групповые и назначить им права доступа.

Примечание:

Права доступа базы данных CONNECT и TEMP предоставляются групповой роли public по умолчанию. Если вы отмените эти права для public, понадобится предоставить CONNECT и TEMP для конкретных подключающихся или групповых ролей.

Можно использовать одно из приложений для администрирования, которое подключается к базам данных PostgreSQL, например, pgAdmin, для управления правами пользователей. Для предоставления и отзыва прав также можно использовать SQL-выражения.

Права доступа к наборам данных в базах геоданных должны назначаться или отзываться с помощью клиентов ArcGIS, это может делать только владелец набора данных.

Минимальные привилегии

В следующей таблице перечислены права доступа, которые предоставляются каждой из трех общих групп – просмотр данных, редактирование данных и создание данных – и минимальные права, необходимые администратору базы геоданных (подключающаяся роль sde) для ежедневных операций.

Тип пользователяНеобходимые праваНазначение

Пользователь, просматривающий данные

Назначьте USAGE для схемы sde.

Это право доступа позволяет подключаться к базе геоданных.

Предоставьте USAGE для всех остальных схем, содержащих данные, к которым необходим доступ.

Это право доступа позволяет получать доступ к данных в определенных схемах.

При использовании в классах объектов типа хранения PostGIS geometry, предоставьте права SELECT представлениям public.geometry_columns и public.spatial_ref_sys для пользователей, просматривающих данные.

Это право необходимо для доступа к данным PostGIS geometry.

При использовании хранения PostGIS geography в классах объектов, предоставьте права SELECT представлениям public.geography_columns и public.spatial_ref_sys для пользователей, просматривающих данные.

Это право необходимо для доступа к данным PostGIS geography.

Предоставьте SELECT для определенных наборов данных.

Владелец данных должен предоставить право доступа SELECT к таблицам и классам объектов в базе геоданных для пользователей, просматривающих данные, чтобы они смогли получить к ним доступ.

Редактор данных

Для редактирования данных требуются такие же права доступа, как и для их просмотра, а также дополнительные.

SELECT, INSERT, UPDATE и DELETE для наборов данных, принадлежащим другим пользователям.

При использовании ArcGIS для выдачи прав INSERT (Вставка), UPDATE (Обновление) и DELETE (Удаление) к классам объектов или таблиц с традиционной версионностью, эти права автоматически выдаются в связанном версионном представлении. Эти права доступа необходимы пользователю для редактирования с помощью SQL и использования версионных представлений.

Владельцы данных должны предоставить редакторам права, необходимые для редактирования данных в базе геоданных. Владельцы данных могут предоставить редакторам любой вариант этих прав.

Создатель данных

Для создания данных требуются такие же права доступа, как и для вьюеров данных, а также это дополнительное.

Каждая роль пользователя, создающего данные, требует AUTHORIZATION для собственной схемы. Необходимо учитывать, что имя схемы должно соответствовать имени роли пользователя, и что групповые роли не могут использовать одну и ту же схему.

AUTHORIZATION гарантирует, что все объекты, созданные в схеме, принадлежат этому пользователю.

Администратор базы геоданных (роль учетной записи sde)

USAGE для всех остальных пользовательских схем.

Это необходимо, чтобы пользователь sde мог сжимать и обновлять базу геоданных.

Таблица прав доступа PostgreSQL

Права доступа, необходимые для создания или обновления базы геоданных

Для создания базы геоданных роль учетной записи sde должна иметь статус superuser. Для обновления базы геоданных роли учетной записи sde, она должна иметь доступ ко всем схемам других пользователей и права на выделение во всех наборах данных базы геоданных.

Статус superuser также необходим для пользователя sde для сброса подключения к базе данных с помощью инструментов ArcGIS. Поэтому вы можете отозвать статус superuser после создания базы геоданных, но только если вы не хотите, чтобы пользователь sde мог сбрасывать подключения.