Oracle - технологии создания распределенных информационных систем
Системные привелегии
Наименование | Назначение |
ANALYZE ANY | Позволяет анализировать любые таблицы, кластеры или индексы в любой схеме |
AUDIT ANY | Позволяет протоколировать любой объект в любой схеме |
TRUNCATE ANY | Позволяет удалить все строки любой таблицы или кластера в любой схеме |
CREATE CLUSTER | Позволяет создать кластер в собственной схеме |
ALTER ANY CLUSTER | Позволяет изменить любой кластер в любой схеме |
CREATE ANY CLUSTER | Позволяет создать кластер в любой схеме |
DROP ANY CLUSTER | Позволяет удалить любой кластер в любой схеме |
ALTER DATABASE | Позволяет изменить базу данных |
CREATE DATABASE LINK | Позволяет создать личный канал доступа в собственной схеме |
CREATE PUBLIC DATABASE LINK | Позволяет создать общий канал доступа |
DROP PUBLIC DATABASE LINK | Позволяет удалить общий канал доступа |
CREATE INDEX | Позволяет создать индекс в собственной схеме для любой таблицы этой схемы |
ALTER ANY INDEX | Позволяет изменить индекс в любой схеме |
CREATE ANY INDEX | Позволяет создать индекс в любой схеме для любой таблицы любой схемы |
DROP ANY INDEX | Позволяет удалить любой индекс в любой схеме |
CREATE PROCEDURE | Позволяет создать хранимые процедуры, функции и пакеты в собственной схеме |
ALTER ANY PROCEDURE | Позволяет изменить любую хранимую процедуру, функцию и пакет в любой схеме |
CREATE ANY PROCEDURE | Позволяет создать хранимые процедуры, функции и пакеты в любой схеме |
DROP ANY PROCEDURE | Позволяет удалить хранимые процедуры, функции и пакеты в любой схеме |
EXECUTE ANY PROCEDURE | Позволяет выполнить любую хранимую процедуру, функцию и пакет или ссылку на общую переменную пакета в любой схеме |
CRANT ANY PRIVILEGE | Позволяет выдать системные привилегии, даже если вы ими не обладаете |
ALTER PROFILE | Позволяет изменить любой профиль в базе данных |
CREATE PROFILE | Позволяет создать профиль |
DROP PROFILE | Позволяет удалить любой профиль в базе данных |
ALTER RESOURCE COST | Позволяет задать стоимости ресурсов сеанса |
CREATE ROLE | Позволяет создать роли |
ALTER ANY ROLE | Позволяет изменить любую роль в базе данных |
DROP ANY ROLE | Позволяет удалить любую роль в базе данных |
GRANT ANY ROLE | Позволяет предоставить любую роль в базе данных |
ALTER ROLLBACK SEGMENT | Позволяет изменить сегмент отката |
CREATE ROLLBACK SEGMENT | Позволяет создать сегмент отката |
ROP ROLLBACK SEGMENT | Позволяет удалить сегмент отката |
ALTER SESSION | Позволяет изменить параметры текущего сеанса работы: средства трассировки SQL, национальный язык или канал связи базы данных |
CREATE SESSION | Позволяет соединиться с базой данных |
RESTRICTED SESSION | Позволяет войти после запуска базы данных с параметром STARTUP RESTRICT |
CREATE SEQUENCE | Позволяет создать последовательность в собственной схеме |
ALTER ANY SEQUENCE | Позволяет изменить любую последовательность в любой схеме |
CREATE ANY SEQUENCE | Позволяет создать последовательность в любой схеме |
DROP ANY SEQUENCE | Позволяет удалить любую последовательность в любой схеме |
SELECT ANY SEQUNCE | Позволяет обратиться к любой последовательности в любой схеме |
CREATE SNAPSHOT | Позволяет создать моментальную копию в собственной схеме. Требует привилегии CREATE TABLE |
ALTER ANY SNAPSHOT | Позволяет изменить любую моментальную копию в любой схеме |
CREATE ANY SNAPSHOT | Позволяет создать моментальную копию в любой схеме. Требует привилегии CREATE ANY TABLE |
DROP ANY SNAPSHOT | Позволяет удалить любую моментальную копию в любой схеме |
CREATE SYNONYM | Позволяет создавать синоним в собственной схеме |
CREATE ANY SYNONYM | Позволяет создать синоним в любой схеме |
DROP ANY SYNONIM | Позволяет удалить любой синоним в любой схеме, кроме общих синонимов |
CREATE PUBLIC SYNONYM | Позволяет создать общий синоним |
DROP PUBLIC SYNONYM | Позволяет удалить общий синоним |
AUDIT SYSTEM | Позволяет протоколировать системные события |
ALTER SYSTEM | Позволяет изменить параметры системы: ограничения ресурсов, процессы разделяемого сервера или процессы диспетчера, группы журнальных файлов, контрольные точки, распределенное восстановление, проверку доступа к файлам |
CREATE TABLE | Позволят создавать таблицу в собственной схеме. Требует привилегии UNLIMITED TABLESPACE или квоту в табличном пространстве |
ALTER ANY TABLE | Позволяет изменить любую таблицу в любой схеме |
BACKUP ANY TABLE | Позволяет использовать утилиту Export для экспорта любой таблицы в любой схеме |
COMMENT ANY TABLE | Позволяет комментировать любую таблицу или столбец в любой схеме |
CREATE ANY TABLE | Позволяет создать любую таблицу в любой схеме |
DELETE ANY TABLE | Позволяет удалить строки любой таблицы, представления или моментальной копии в любой схеме |
DROP ANY TABLE | Позволяет удалить любую таблицу в любой схеме |
INSERT ANY TABLE | Позволяет добавить строки в любую таблицу, представление или моментальную копию в любой схеме |
LOCK ANY TABLE | Позволяет блокировать любую таблицу в любой схеме |
SELECT ANY TABLE | Позволяет сделать запрос из любой таблицы представления или моментальной копии в любой схеме |
UPDATE ANY TABLE | Позволяет изменить строки любой таблицы, представления или моментальной копии в любой схеме |
ALTER TABLESPACE | Позволяет изменить табличное пространство |
CREATE TABLESPACE | Позволяет создать табличное пространство |
DROP TABLESPACE | Позволяет удалить табличное пространство |
MANAGE TABLESPACE | Позволяет переводить табличное пространство в автономный и оперативный режимы, а также начинать и завершать спасение табличного пространства |
UNLIMITED TABLESPACE | Позволяет использовать неограниченное количество любого табличного пространства |
CREATE TRIGGER | Позволяет создать триггер в собственной схеме |
ALTER ANY TRIGGER | Позволяет разрешить, запретить или откомпилировать любой триггер в любой схеме |
CERATE ANY TRIGGER | Позволяет создать триггер в любой схеме, связанный с любой таблицей любой схемы |
DROP ANY TRIGGER | Позволяет удалить любой триггер в любой схеме |
ALTER USER | Позволяет изменить у других пользователей пароль, табличные пространства и квоты, присвоить профили и роли, назначенные по умолчанию |
BECOME USER | Позволяет стать другим пользователем. Используется программой Import при загрузке данных в схему другого пользователя |
CREATE USER | Позволяет создать пользователей, установить квоты в любом табличном пространстве, установить табличное пространство по умолчанию и временное табличное пространство, присвоить профили |
DROP USER | Позволяет удалить другого пользователя |
CREATE VIEW | Позволяет создать представление в собственной схеме |
CREATE ANY VIEW | Позволяет создать представление в любой схеме |
DROP ANY VIEW | Позволяет удалить любое представление в любой схеме |
Объектные привилегии
Наименовнаие |
Назначение |
ALL |
Выдаются все привилегии для данного объекта |
ALL PRIVILEGES |
То же что и ALL |
ALTER |
Позволяет изменить определение |
DELETE |
Позволяет удалить строки |
EXECUTE |
Позволяет выполнить объект, а также осуществлять доступ к его переменным |
INDEX |
Позволяет создавать индекс |
INSERT |
Позволяет добавлять строки |
REFERENCES |
Позволяет создавать ограничение, которое ссылается на таблицу. Эту привилегию нельзя предоставлять роли |
SELECT |
Позволяет осуществлять запрос |
UPDATE |
Позволяет изменять строки |
Соответствие между объектами быза данных и привелегиями.
Наименование привилегии | Таблицы | Представления | Последова- тельности |
Процедуры Функции Пакеты | Моментальные копии |
ALTER | Х | Х | |||
DELETE | Х | Х | |||
EXECUTE | Х | ||||
INDEX | Х | ||||
INSERT | Х | Х | |||
REFERENCES | Х | ||||
SELECT | Х | Х | Х | Х | |
UPDATE | Х | Х | Х |
Пользователи и роли.
Роль - тип объекта, который используется, для упрощения управления привилегиями системного и объектного уровня. Вместо того, чтобы назначать привилегии непосредственно учетным разделам пользователей, можно назначать привилегии ролям, которые затем назначаются пользователям.
Роли, по существу, - группы привилегий системного и объектного уровня. Они делают управление привилегиями намного проще, так как можно один раз сконфигурировать привилегии для отдельных типов пользователей и затем назначать эти привилегии ролям. Когда пользователь нуждается в какой-то группе привилегий, можно использовать единственную команду назначения роли, чтобы удовлетворить этого пользователя. Без ролей пришлось бы вводить по несколько команд для каждой из требуемых привилегий.
Кроме того, можно создавать различные роли с привилегиями, даже если еще нет учетных разделов пользователей Oracle, которые нуждаются в этих ролях. Можно назначать роль другой роли, формируя их иерархию. Также можно защитить роль паролем, который пользователь должен ввести для активизации роли.
Как уже говорилось, физическая база данных может содержать много учетных разделов пользователей Oracle, которые защищены паролями. Вы должны ввести имя пользователя и пароль независимо от того, какой инструмент вы используете, для получения доступа к базе данных. Роли - это не то же самое, что пользователи Oracle; вы не можете соединяться с базой данных, вводя имя роли и пароль.
Протоколирование (аудит).
Механизм протоколирования Oracle обеспечивает три типа протоколов.
- Протокол привилегий прослеживает, какие системные привилегии используются.
- Протокол операторов отслеживает, какие операторы SQL используются для всех объектов.
- Протокол объектного уровня контролирует доступ к объектам.
Вы можете запустить эти протоколы, чтобы проследить, когда операторы отрабатываются успешно и когда они терпят неудачу. Вы можете использовать протоколирование, чтобы отследить любую попытку вторжения в систему.
Кроме того, можно устанавливать, что записывается в протокол. Может записываться один элемент на операцию независимо от того, сколько попыток выполнить операции было сделано в течение сеанса соединения. Или, альтернативно, записывается один элемент протокола для каждой попытки (успешной или нет) операции в течение сеанса.
Информация протокола хранится в таблице словаря данных, которая содержит протоколируемую операцию, идентификатор пользователя, выполняющего операцию, дату и время операции. Oracle обеспечивает набор представлений словаря данных, чтобы сделать информацию в таблице протокола более читабельной. Вставленные в протокол строки продолжают храниться, даже если пользователь отменяет транзакцию.
Администратор базы данных может периодически очищать или архивировать протокол.
2.3.5. Поддержка национальных языков
Средство поддержки национальных языков Oracle (National Language Support - NLS) позволяет пользователям использовать базу данных на их собственных языках. Это средство обеспечивает следующие функции:
- Поддержка различных схем кодирования, т.е. данные, созданные в схеме кодирования на одной машине, могут быть обработаны и представлены на другой.
- Управление языком вывода ошибок сервера и информационных сообщений, чисел, дат, форматов валюты и начального дня недели.
- Поддержка лингвистической сортировки гарантирует, что символы появляются в корректном порядке.
Можно добавлять поддержку для новых языков, используя программный продукт NLS*WorkBench, который, по существу, поддерживает таблицы перевода для интерпретации ввода от пользователя и для вывода на экран результатов.
Когда в поставку прикладной системы входят приложения на различных языках, наиболее важной частью пользовательского интерфейса являются различные подсказки, библиотека стандартных текстов и сообщения приложения. В настоящее время непосредственно разработчики приложения определяют, как библиотека стандартных текстов, подсказки и сообщения прикладной системы изменяются от одного языка к другому. Oracle работает над программным продуктом автоматического перевода с целью упрощения решения этой задачи.