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

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

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

Для администрирования прав доступа можно использовать Enterprise Manager Oracle. Вы также можете использовать выражения SQL для предоставления или отмены прав.

Перечисленные на этой странице права доступа применяются к Oracle, Autonomous Transaction Processing и Amazon Relational Database Service (RDS) for Oracle.

Права доступа пакетов

Права доступа на выполнение требуются для следующих пакетов:

  • dbms_lob
  • dbms_lock
  • dbms_pipe
  • dbms_utility
  • dbms_sql
  • utl_raw

Права execute для этих пакетов должны быть выданы роли 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;

Подсказка:

Права доступа execute для dbms_utility, dbms_sql и utl_raw предоставлены роли public в Oracleпо умолчанию. Однако вам необходимо предоставить права execute для этих пакетов, если вы явно запретили их для роли public.

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

Внимание:

Вы не можете предоставить права доступа execute для роли и предоставить эту роль всем пользователям, поскольку права доступа, полученные через роли пользователей, не применимы, если используются пакеты Oracle.

После предоставления прав доступа execute отдельным пользователям, перекомпилируйте схему sde:

EXEC dbms_utility.compile_schema( 'SDE' );

Минимальные права доступа

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

Минимальные права доступа в Oracle

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

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

  • CREATE SESSION

SELECT для объектов базы данных

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

  • CREATE SESSION

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

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

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

  • CREATE SEQUENCE
  • CREATE SESSION
  • CREATE TABLE
  • CREATE TRIGGER
  • CREATE VIEW

Администратор базы геоданных

  • CREATE PROCEDURE
  • CREATE SEQUENCE
  • CREATE SESSION
  • CREATE TABLE
  • CREATE TRIGGER

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

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

Для создания или обновления базы геоданных в Oracle, администратору базы геоданных должны быть предоставлены права доступа, перечисленные в таблицах далее. Основания для прав доступа или групп прав доступа также приведены в таблицах. Некоторые из этих прав доступа могут быть запрещены после того, как создание или обновление завершено, как указано в поле Цель и как показано в минимальных правах доступа администратора базы геоданных, приведенных в предыдущей таблице.

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

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

Права доступа сгруппированы по цели, которой они служат при создании и обновлении базы геоданных.

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

Права доступаЦель
  • CREATE SESSION

Подключиться к Oracle.

  • CREATE TABLE
  • CREATE TRIGGER

Создать репозиторий базы геоданных.

  • CREATE SEQUENCE

Создать последовательности для генерации ID. Данные права доступа могут быть запрещены после создания базы геоданных.

  • CREATE PROCEDURE

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

  • EXECUTE ON DBMS_CRYPTO

Разрешает создание функции участника карты для типа ST_Geometry, который вызывается в случае выполнения пространственного объединения или пересечения.

  • CREATE INDEXTYPE
  • CREATE LIBRARY*
  • CREATE OPERATOR
  • CREATE PUBLIC SYNONYM
  • CREATE TYPE
  • CREATE VIEW
  • DROP PUBLIC SYNONYM

Создать тип данных ST_Geometry и типы, используемые для оптимизации запросов. Право CREATE VIEW необходимо для создания системных представлений: GDB_Items_vw и GDB_ItemRelationships_vw. Данные права доступа могут быть запрещены после создания базы геоданных.

*Право CREATE LIBRARY необязательно при создании базы геоданных в Autonomous Transaction Processing (ATP).

  • ADMINISTER DATABASE TRIGGER

Позволяет создать триггеры событий базы данных, необходимые для изменения таблиц ST_GEOMETRY_COLUMNS и ST_GEOMETRY_INDEX, если таблица со столбцом ST_Geometry была удалена, изменена или переименована с использованием SQL. Это право также необходимо для создания триггеров pl/sql. Данные права доступа могут быть запрещены после создания базы геоданных.

  • SELECT_CATALOG_ROLE

Данные права доступа необходимы только для включения и обновления базы геоданных в Autonomous Transaction Processing. Данные права доступа не обязательны для других предложений поддерживаемых баз данных Oracle.

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

Права доступаЦель
  • CREATE SESSION

Подключиться к Oracle.

  • CREATE TABLE
  • CREATE TRIGGER
  • CREATE VIEW

Обновить репозиторий (хранилище) базы геоданных. Право доступа CREATE VIEW может быть отозвано после обновления.

  • CREATE PROCEDURE

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

  • CREATE SEQUENCE

Обновить последовательности генерации ID. Данные права доступа могут быть запрещены после обновления.

  • EXECUTE ON DBMS_CRYPTO

Обновить функцию участника карты для типа ST_Geometry, который вызывается в случае выполнения пространственного объединения или пересечения.

  • CREATE INDEXTYPE
  • CREATE LIBRARY*
  • CREATE OPERATOR
  • CREATE PUBLIC SYNONYM
  • CREATE TYPE
  • DROP PUBLIC SYNONYM

Обновить тип данных ST_Geometry, а также типы, используемые для оптимизации запросов. Данные права доступа могут быть запрещены после обновления.

*Право CREATE LIBRARY необязательно при обновлении базы геоданных в ATP.

  • ALTER ANY INDEX
  • CREATE ANY INDEX
  • CREATE ANY TRIGGER
  • CREATE ANY VIEW
  • DROP ANY INDEX
  • DROP ANY VIEW
  • SELECT ANY TABLE

Обновить содержимое базы геоданных.

  • ADMINISTER DATABASE TRIGGER

Позволяет создать триггеры событий базы данных, необходимые для изменения таблиц ST_GEOMETRY_COLUMNS и ST_GEOMETRY_INDEX, если таблица с ST_Geometry была удалена, изменена или переименована с использованием SQL. Это право также необходимо для создания триггеров pl/sql. Данные права доступа могут быть запрещены после обновления.

Дополнительные общие права доступа

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

Дополнительные права доступа Oracle администратора базы геоданных

Права доступаПредоставленоЦель
  • ALTER SESSION
  • PLUSTRACE

Администратор базы геоданных

Включает трассировку SQL, объект SQL*Plus AUTOTRACE и изменение установочных параметров, определенных для данного сеанса, для улучшения производительности и решения проблем; создает роль PLUSTRACE с помощью запуска ORACLE_HOME/sqlplus/admin/plustrce.sql.

  • ALTER ANY INDEX
  • ANALYZE ANY
  • SELECT ANY DICTIONARY

Администратор базы геоданных

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

Это применимо в организациях, в которых администратор базы геоданных не является администратором базы данных Oracle.

  • CREATE DATABASE LINK
  • CREATE MATERIALIZED VIEW
  • CREATE VIEW

Администратор базы геоданных

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

  • RESTRICTED SESSION

Администратор базы геоданных

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

  • UNLIMITED TABLESPACE

Администратор базы геоданных

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

  • ALTER SYSTEM
  • SELECT_CATALOG_ROLE*

Администратор базы геоданных

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

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

*Право SELECT_CATALOG_ROLE требуется администратору базу геоданных в Autonomous Transaction Processing.

SELECT ON DBA_ROLES

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

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

<пользователь> INHERIT PRIVILEGES ON

Или

<пользователь> INHERIT ANY PRIVILEGES ON

sde

Необходимо предоставить одно из этих прав пользователю sde, чтобы разрешить импорт Data Pump схемы пользователя sde, выполняемый другим пользователем, например, системным или Oracle sys.

Это право не применяется к владельцам базы геоданных в пользовательской схеме.

Другие права доступа

Для другого программного обеспечения ArcGIS, которое подключается к базе геоданных Oracle, могут потребоваться дополнительные права доступа, перечисленные ниже:

  • Для ArcGIS Insights могут потребоваться дополнительные права доступа. См. раздел Необходимые права доступа к базе данных справочной системы ArcGIS Insights для получения дополнительной информации.
  • Для доступа и отслеживания базы геоданных ArcGIS Monitor могут потребоваться дополнительные права. Для получения дополнительной информации см. раздел Регистрация баз данных Oracle.