Права определяют, что какой-либо пользователь может делать с данными и с базой данных. Права должны предоставляться с учетом типа работ, выполняемых пользователем, работающим в организации. Участвует ли пользователь в администрировании базы геоданных? Требуется ли пользователю редактировать или создавать данные? Или должен ли пользователь только формировать запросы к данным?
Пользователям должны быть предоставлены определенные права в зависимости от того, что им требуется делать в базе данных Oracle. Некоторые права доступа могут быть предоставлены ролям, но другие должны быть предоставлены напрямую пользователю. Права доступа пользователей устанавливаются на разных уровнях.
В первой секции данного раздела перечислены пакеты прав доступа, необходимые для всех пользователей. Эти права доступа должны быть предоставлены роли public для создания или обновления баз геоданных. Однако они могут быть предоставлены всем отдельным пользователям после создания или обновления базы геоданных, если вы хотите запретить им роль public.
Во второй секции перечислены минимальные требуемые права в базе данных для основных типов пользователей: вьюеров данных, редакторов данных, создателей данных и администраторов базы геоданных. Эти права доступа необходимы дополнительно к тем, которые перечислены в первой секции.
В третьей секции перечислены права доступа, необходимые администратору базы геоданных для создания или обновления базы геоданных. И эти права доступа также необходимы дополнительно к тем, которые перечислены в первой секции.
В последней секции перечислены дополнительные, необязательные права доступа, которые обычно предоставляются пользователям в базах геоданных в Oracle.
Для администрирования прав доступа можно использовать Enterprise Manager Oracle. Вы также можете использовать выражения SQL для предоставления или отмены прав.
Права доступа пакетов
Права доступа на выполнение требуются для следующих пакетов:
- dbms_lob
- dbms_lock
- dbms_pipe
- dbms_utility
- dbms_sql
- utl_raw
Права на выполнение этих пакетов должны быть предоставлены роли public для создания или обновления базы геоданных.
GRANT EXECUTE ON dbms_pipe TO public;
GRANT EXECUTE ON dbms_lock TO public;
GRANT EXECUTE ON dbms_lob TO public;
GRANT EXECUTE ON dbms_utility TO public;
GRANT EXECUTE ON dbms_sql TO public;
GRANT EXECUTE ON utl_raw TO public;
После того как вы создали или обновили базу геоданных, вы можете ужесточить права доступа к этим пакетам, запретив их для роли public и предоставив их каждому отдельному пользователю, который зарегистрирован в базе геоданных, включая администратора базы геоданных.
Минимальные права доступа
Дополнительно к правам, перечисленным в предыдущей секции, для каждого типа пользователя необходимо следующее:
Минимальные права доступа в Oracle
Тип пользователя | Права доступа для баз данных | Права доступа для наборов данных | Примечания |
---|---|---|---|
Пользователь, имеющий право просматривать данные |
| SELECT для объектов базы данных | |
Редактор данных |
| SELECT, INSERT, UPDATE и DELETE для наборов данных, принадлежащим другим пользователям. |
При использовании ArcGIS для выдачи прав INSERT (Вставка), UPDATE (Обновление) и DELETE (Удаление) к классам объектов или таблиц с традиционной версионностью, эти права автоматически выдаются в связанном версионном представлении. Эти права доступа необходимы пользователю для редактирования с помощью SQL и использования версионных представлений. |
Создатель данных |
| ||
Администратор базы геоданных |
|
Права доступа к наборам данных в базах геоданных должны назначаться или отзываться с помощью клиентов ArcGIS, это может делать только владелец набора данных.
Права доступа, необходимые для создания или обновления базы геоданных
Для создания или обновления базы геоданных в Oracle, администратору базы геоданных должны быть предоставлены права доступа, перечисленные в таблицах далее. Основания для прав доступа или групп прав доступа также приведены в таблицах. Некоторые из этих прав доступа могут быть запрещены после того, как создание или обновление завершено, как указано в поле Цель и как показано в минимальных правах доступа администратора базы геоданных, приведенных в предыдущей таблице.
В первой таблице приведен список прав доступа, необходимых для пользователя sde, чтобы создать базу геоданных в схеме пользователя sde. Это называется базой геоданных sde.
Во второй таблице перечислены права доступа, необходимые пользователю sde для обновления базы геоданных sde.
В третьей таблице приведен список прав доступа, необходимых для владельца схемы, чтобы обновить базу геоданных с пользовательской схемой.
Права доступа сгруппированы по цели, которой они служат при создании и обновлении базы геоданных.
Права доступа пользователя Oracle sde для создания базы геоданных sde
Права доступа | Цель |
---|---|
| Подключиться к Oracle. |
| Создать репозиторий базы геоданных. |
| Создать последовательности для генерации ID. Данные права доступа могут быть запрещены после создания базы геоданных. |
| Создать пакеты для управления содержанием системных таблиц базы геоданных. |
| Разрешает создание функции участника карты для типа ST_Geometry, который вызывается в случае выполнения пространственного объединения или пересечения. |
| Создать тип данных ST_Geometry и типы, используемые для оптимизации запросов. CREATE VIEW необходим для создания системных представлений (видов): GDB_Items_vw и GDB_ItemRelationships_vw. Данные права доступа могут быть запрещены после создания базы геоданных. |
| Позволяет создать триггеры событий базы данных, необходимые для изменения таблиц ST_GEOMETRY_COLUMNS и ST_GEOMETRY_INDEX, если таблица со столбцом ST_Geometry была удалена, изменена или переименована с использованием SQL. Данные права доступа могут быть запрещены после создания базы геоданных. |
Права доступа пользователя Oracle sde для обновления базы геоданных sde
Права доступа | Цель |
---|---|
| Подключиться к Oracle. |
| Обновить репозиторий (хранилище) базы геоданных. Право доступа CREATE VIEW может быть запрещено после обновления. |
| Обновить пакеты для управления содержанием системных таблиц базы геоданных. |
| Обновить последовательности генерации ID. Данные права доступа могут быть запрещены после обновления. |
| Обновить функцию участника карты для типа ST_Geometry, который вызывается в случае выполнения пространственного объединения или пересечения. |
| Обновить тип данных ST_Geometry, а также типы, используемые для оптимизации запросов. Данные права доступа могут быть запрещены после обновления. |
| Обновить содержимое базы геоданных. |
| Позволяет создать триггеры событий базы данных, необходимые для изменения таблиц ST_GEOMETRY_COLUMNS и ST_GEOMETRY_INDEX, если таблица с ST_Geometry была удалена, изменена или переименована с использованием SQL. Данные права доступа могут быть запрещены после обновления. |
Права доступа Oracle для обновления базы геоданных с пользовательской схемой
Права доступа | Цель |
---|---|
| Подключиться к Oracle. |
| Обновить репозиторий (хранилище) базы геоданных. |
| Обновить последовательности генерации ID. Данные права доступа могут быть запрещены после обновления. |
| Обновить содержимое базы геоданных. |
Дополнительные общие права доступа
Многие организации предпочитают использовать преимущества дополнительных объектов Oracle для дальнейшего улучшения возможностей их баз геоданных. Некоторые дополнительные общие права доступа для администратора базы геоданных и их цели перечислены в таблице далее. Права доступа сгруппированы по цели, которой они служат.
Дополнительные права доступа Oracle администратора базы геоданных
Права доступа | Предоставлено | Цель |
---|---|---|
| Администратор базы геоданных | Включить трассировку SQL, объект SQL*Plus AUTOTRACE и изменение установочных параметров, определенных для данного сеанса, для улучшения производительности и решения проблем; создает роль PLUSTRACE с помощью запуска ORACLE_HOME/sqlplus/admin/plustrce.sql. |
| Администратор базы геоданных | Предоставляется администратору базы геоданных, чтобы позволить этому пользователю отслеживать Oracle и выполнять основные задачи обслуживания. Это применимо в организациях, где администратор базы геоданных не является администратором базы Oracle. |
| Администратор базы геоданных | Применяется для интеграции базы геоданных с другими непространственными базами данных в многопользовательской базе данных. |
| Администратор базы геоданных | Данные права доступа позволяют администратору базы геоданных выполнять обслуживание, когда база данных включена, но не доступна для конечных пользователей. |
| Администратор базы геоданных | Данные права доступа предоставляются администратору базы геоданных для установки и обновления, с гарантией того, что в базе данных существует достаточно места для хранения табличного пространства для администратора, чтобы завершить установку или обновление; эти права доступа можно запретить после установки или обновления базы геоданных, если вы хотите установить ограничения для управления пространством. Для дополнительной информации об использовании ограничения хранения см. Настройка памяти в Oracle . |
| Администратор базы геоданных | Пользователь sde должен иметь эти права доступа, чтобы удалять подключения из базы геоданных. Инструмент геообработки Создать многопользовательскую базу геоданных наделяет пользователя sde этими правами доступа. Можно отозвать эти права доступа пользователя sde после выполнения инструмента, но, если вы это сделаете, пользователь sde не сможет отключать пользователей от базы данных. Или пользователь sde должен быть добавлен к роли администратора базы данных, чтобы иметь возможность отключения пользователей от базы данных. |
SELECT ON DBA_ROLES | Создатели данных | Если вы хотите, чтобы создатели данных предоставляли права к своим наборам данных для ролей базы данных с помощью диалогового окна Права доступа в они должны обладать правами select для DBA_ROLES, чтобы получать список ролей в базе данных. |
INHERIT PRIVILEGES ON <пользователь> Или INHERIT ANY PRIVILEGES ON <пользователь> | sde | Эти дополнительные права применяются только в Oracle 12c или более поздних версиях. Необходимо предоставить это право пользователю sde, чтобы разрешить импорт Data Pump схемы пользователя sde, выполняемый другим пользователем, например, системным или Oracle sys. Это право не применяется к владельцам базы геоданных в пользовательской схеме. |