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

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

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

Для администрирования прав доступа к базе данных можно использовать инструменты IBM Db2 или выражения SQL.

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

Db2 по умолчанию предоставляет группе PUBLIC права базы данных CREATETAB, BINDADD, CONNECT и IMPLICITSCHEMA, а также право USE к табличному пространству USERSPACE1 и право SELECT к представлению системного каталога. Для удаления любого из этих прав базы данных, администратор базы должен явно отозвать право у группы PUBLIC.

Если какое-либо из этих прав удаляется из группы PUBLIC, их необходимо предоставить отдельным пользователям или группам базы данных. Например, если у группы PUBLIC отзывается право CONNECT, его необходимо предоставить любому пользователю, которому необходимо подключаться к базе данных. Также, если право SELECT на представления или таблицы системного каталога отзывается у группы PUBLIC, отдельные пользователи или группы должны получить право SELECT, в противном случае они не смогут подключаться к базе геоданных:

  • SYSIBM.SYSDUMMY1 (вид каталога)
  • SYSCAT.ROLEAUTH
  • SYSCAT.DBAUTH
  • SYSCAT.TABAUTH

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

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

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

  • CONNECT к базе данных
  • EXECUTE on MON_GET_CONNECTION

SELECT на объектах базы данных, SELECT on SYSIBM.SYSDUMMY1, SYSCAT.ROLEAUTH, SYSCAT.DBAUTH, SYSCAT.TABAUTH

Если база данных настроена на использование таблиц файла журнала с общим доступом (по умолчанию), могут потребоваться следующие дополнительные права:

  • CREATETAB
  • IMPLICIT_SCHEMA

Функция MON_GET_CONNECTION очищает несуществующие процессы в таблице PROCESS_INFORMATION при подключении пользователя. Для очистки подключений у пользователя sde должна быть возможность выполнить MON_GET_CONNECTION.

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

  • CONNECT к базе данных
  • CREATEIN, ALTERIN и DROPIN для необходимой схемы
  • EXECUTE on MON_GET_CONNECTION

  • Права SELECT, INSERT, ALTER и DELETE для таблиц других пользователей.
  • CONTROL, ALTER, DELETE, INSERT, SELECT, UPDATE REFERENCES, SELECT on SYSIBM.SYSDUMMY1
  • SELECT on SYSCAT.ROLEAUTH, SYSCAT.DBAUTH, SYSCAT.TABAUTH

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

Функция MON_GET_CONNECTION очищает несуществующие процессы в таблице PROCESS_INFORMATION при подключении пользователя. Для очистки подключений у пользователя sde должна быть возможность выполнить MON_GET_CONNECTION.

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

  • CONNECT к базе данных
  • CREATETAB в базе данных
  • CREATEIN, ALTERIN и DROPIN для необходимой схемы
  • EXECUTE on MON_GET_CONNECTION

CONTROL на объектах базы данных, SELECT on SYSIBM.SYSDUMMY1

SELECT on SYSCAT.ROLEAUTH, SYSCAT.DBAUTH, SYSCAT.TABAUTH

Функция MON_GET_CONNECTION очищает несуществующие процессы в таблице PROCESS_INFORMATION при подключении пользователя. Для очистки подключений у пользователя sde должна быть возможность выполнить MON_GET_CONNECTION.

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

  • Источник DBADM
  • Источник SYSCTRL или SYSADM
  • EXECUTE on MON_GET_CONNECTION

Уровень доступа DBADM предоставляет пользователю sde все права на все объекты в базе данных и позволяет ему предоставлять эти права другим пользователям. Это требуется для создания или обновления базы геоданных.

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

Функция MON_GET_CONNECTION очищает несуществующие процессы в таблице PROCESS_INFORMATION при подключении пользователя. Для очистки подключений у пользователя sde должна быть возможность выполнить MON_GET_CONNECTION.