Эта глава описывает безопасность базы данных.
Вступление
База данных и функции DB2 могут управляться двумя различными режимами контроля безопасности:
- Аутентификация
- авторизация
Аутентификация
Аутентификация — это процесс подтверждения того, что пользователь входит в систему только в соответствии с правами на выполнение действий, которые ему разрешено выполнять. Аутентификация пользователя может выполняться на уровне операционной системы или самой базы данных. Использование средств аутентификации для биометрических данных, таких как сетчатка и распечатки рисунков, используются для защиты базы данных от хакеров или злоумышленников.
Безопасность базы данных может управляться извне системы базы данных db2. Вот некоторый тип процесса аутентификации безопасности:
- Основано на аутентификации операционной системы.
- Облегченный протокол доступа к каталогам (LDAP)
Для DB2 служба безопасности является частью операционной системы как отдельный продукт. Для аутентификации требуются два различных учетных данных: идентификатор пользователя или имя пользователя и пароль.
авторизация
Вы можете получить доступ к базе данных DB2 и ее функциям в системе баз данных DB2, которая управляется менеджером баз данных DB2. Авторизация — это процесс, управляемый менеджером баз данных DB2. Менеджер получает информацию о текущем аутентифицированном пользователе, которая указывает, какую операцию базы данных пользователь может выполнить или получить к ней доступ.
Вот различные способы разрешений, доступных для авторизации:
Основное разрешение : предоставляет идентификатор авторизации напрямую.
Вторичное разрешение : Предоставляет группам и ролям, если пользователь является участником
Публичное разрешение : Предоставляет всем пользователям публично.
Контекстно-зависимое разрешение . Предоставляет доверенную контекстную роль.
Авторизация может быть предоставлена пользователям на основе категорий ниже:
- Авторизация на уровне системы
- Системный администратор [SYSADM]
- Управление системой [SYSCTRL]
- Обслуживание системы [SYSMAINT]
- Системный монитор [SYSMON]
Власти обеспечивают контроль над функциональностью уровня экземпляра. Полномочия предоставляют групповым привилегиям, контролировать обслуживание и полномочия операций. Например, база данных и объекты базы данных.
- Авторизация на уровне базы данных
- Администратор безопасности [SECADM]
- Администратор базы данных [DBADM]
- Контроль доступа [ACCESSCTRL]
- Доступ к данным [DATAACCESS]
- Администратор SQL. [SQLADM]
- Администратор управления рабочей нагрузкой [WLMADM]
- Объясните [ОБЪЯСНИТЬ]
Власти обеспечивают контроль в базе данных. Другие полномочия для базы данных включают с LDAD и CONNECT.
- Авторизация на уровне объекта. Авторизация на уровне объекта включает проверку привилегий при выполнении операции над объектом.
- Контентная авторизация . Пользователь может иметь доступ на чтение и запись к отдельным строкам и столбцам в конкретной таблице, используя управление доступом на основе меток [LBAC].
Таблицы и файлы конфигурации DB2 используются для записи разрешений, связанных с именами авторизации. Когда пользователь пытается получить доступ к данным, записанные разрешения проверяют следующие разрешения:
- Авторизационное имя пользователя
- Какая группа принадлежит пользователю
- Какие роли предоставляются непосредственно пользователю или косвенно группе
- Разрешения, полученные через доверенный контекст.
При работе с операторами SQL модель авторизации DB2 учитывает комбинацию следующих разрешений:
- Разрешения, предоставленные первичному идентификатору авторизации, связанному с операторами SQL.
- Вторичные идентификаторы авторизации, связанные с операторами SQL.
- Предоставлено ПУБЛИЧНО
- Предоставлено роли доверенного контекста.
Органы уровня инстанции
Давайте обсудим некоторые инстанции, связанные с властями.
Системный администратор (SYSADM)
Это административный орган высшего уровня на уровне экземпляра. Пользователи с полномочиями SYSADM могут выполнять некоторые базы данных и команды менеджера баз данных в экземпляре. Пользователи с полномочиями SYSADM могут выполнять следующие операции:
- Обновить базу данных
- Восстановить базу данных
- Обновить файл конфигурации менеджера баз данных.
Орган управления системой (SYSCTRL)
Это самый высокий уровень в системе контроля над системой. Он обеспечивает выполнение операций обслуживания и утилит в отношении экземпляра менеджера баз данных и его баз данных. Эти операции могут влиять на системные ресурсы, но они не разрешают прямой доступ к данным в базе данных.
Пользователи с полномочиями SYSCTRL могут выполнять следующие действия:
- Обновление базы данных, узла или каталога службы распределенного подключения (DCS)
- Вынуждение пользователей от системного уровня
- Создание или удаление уровня базы данных
- Создание, изменение или удаление табличного пространства
- Использование любого табличного пространства
- Восстановление базы данных
Центр обслуживания системы (SYSMAINT)
Это второй уровень управления системой. Он обеспечивает выполнение операций обслуживания и утилит в отношении экземпляра менеджера баз данных и его баз данных. Эти операции влияют на системные ресурсы, не позволяя прямой доступ к данным в базе данных. Эти полномочия предназначены для пользователей, чтобы поддерживать базы данных в экземпляре менеджера баз данных, который содержит конфиденциальные данные.
Только пользователи с полномочиями системы SYSMAINT или более высокого уровня могут выполнять следующие задачи:
- Принимая резервную копию
- Восстановление резервной копии
- Восстановление с повтором
- Запуск или остановка экземпляра
- Восстановление табличных пространств
- Выполнение команды db2trc
- Создание снимков системного монитора в случае пользователя уровня экземпляра или пользователя уровня базы данных.
Пользователь с SYSMAINT может выполнять следующие задачи:
- Запросить состояние табличного пространства
- Обновление файлов истории журнала
- Реорганизация таблиц
- Использование RUNSTATS (коллекция каталогов статистики)
Полномочия системного монитора (SYSMON)
С этими полномочиями пользователь может отслеживать или делать снимки экземпляра менеджера баз данных или его базы данных. Полномочия SYSMON позволяют пользователю выполнять следующие задачи:
- ПОЛУЧИТЕ ПЕРЕКЛЮЧАТЕЛИ БАЗЫ ДАННЫХ МЕНЕДЖЕРА
- ПОЛУЧИТЬ ПЕРЕКЛЮЧАТЕЛИ МОНИТОРА
- ПОЛУЧИТЬ СНЕЙШОТ
- СПИСОК
- СПИСОК АКТИВНЫХ БАЗ ДАННЫХ
- СПИСОК ПРИЛОЖЕНИЙ
- СПИСОК БАЗ ДАННЫХ
- СПИСОК ПРИЛОЖЕНИЙ DCS
- СПИСОК ПАКЕТОВ
- СПИСОК ТАБЛИЦ
- СПИСОК СТОЛОВЫХ КОНТЕЙНЕРОВ
- СПИСОК СТОЛОВ
- СПИСОК ПОЛЬЗОВАТЕЛЕЙ
- СБРОС МОНИТОРА
- ПЕРЕКЛЮЧАТЕЛИ МОНИТОРА ОБНОВЛЕНИЯ
База данных органов
Каждый орган базы данных содержит идентификатор авторизации для выполнения некоторых действий с базой данных. Эти полномочия базы данных отличаются от привилегий. Вот список некоторых органов управления базами данных:
ACCESSCTRL : позволяет предоставлять и отзывать все привилегии объекта и полномочия базы данных.
BINDADD : позволяет создать новый пакет в базе данных.
CONNECT : позволяет подключаться к базе данных.
CREATETAB : позволяет создавать новые таблицы в базе данных.
CREATE_EXTERNAL_ROUTINE : Позволяет создать процедуру, которая будет использоваться приложениями и пользователями баз данных.
DATAACCESS : позволяет получить доступ к данным, хранящимся в таблицах базы данных.
DBADM : выступать в роли администратора базы данных. Он предоставляет все остальные права доступа к базе данных, кроме ACCESSCTRL, DATAACCESS и SECADM.
ОБЪЯСНИТЬ : Позволяет объяснить планы запросов, не требуя от них обладания правами доступа к данным в таблицах.
IMPLICIT_SCHEMA : позволяет пользователю неявно создавать схему, создавая объект с помощью оператора CREATE.
LOAD : позволяет загружать данные в таблицу.
QUIESCE_CONNECT : позволяет получить доступ к базе данных, пока она находится в состоянии покоя (временно отключена).
SECADM : позволяет выступать в роли администратора безопасности для базы данных.
SQLADM : позволяет отслеживать и настраивать операторы SQL.
WLMADM : позволяет выступать в роли администратора рабочей нагрузки.
привилегии
SETSESSIONUSER
Привилегии ID авторизации включают действия с ID авторизации. Существует только одна привилегия, называемая привилегией SETSESSIONUSER. Он может быть предоставлен пользователю или группе и позволяет пользователю сеанса переключать идентификаторы на любой из идентификаторов авторизации, для которых предоставляются привилегии. Эта привилегия предоставляется полномочиями пользователя SECADM.
Схема привилегий
Эти привилегии включают действия над схемой в базе данных. Владелец схемы имеет все полномочия для управления объектами схемы, такими как таблицы, представления, индексы, пакеты, типы данных, функции, триггеры, процедуры и псевдонимы. Пользователь, группа, роль или PUBLIC могут быть предоставлены любому пользователю со следующими привилегиями:
- CREATEIN : позволяет создавать объекты в схеме
- ALTERIN : позволяет изменять объекты в схеме.
DROPIN
Это позволяет удалять объекты в схеме.
Привилегии табличного пространства
Эти привилегии включают действия с табличными пространствами в базе данных. Пользователю может быть предоставлена привилегия USE для табличных пространств. Затем привилегии позволяют им создавать таблицы в табличных пространствах. Владелец привилегии может предоставить привилегию USE с помощью команды WITH GRANT OPTION для табличного пространства при создании табличного пространства. А полномочия SECADM или ACCESSCTRL имеют разрешения на использование привилегий USE в табличном пространстве.
Привилегии таблиц и представлений
Пользователь должен иметь полномочия CONNECT для базы данных, чтобы иметь возможность использовать таблицы и просматривать привилегии. Привилегии для таблиц и представлений приведены ниже:
КОНТРОЛЬ
Он предоставляет все привилегии для таблицы или представления, включая удаление и предоставление, отзыв отдельных привилегий таблицы для пользователя.
ALTER
Это позволяет пользователю изменять таблицу.
УДАЛЯТЬ
Это позволяет пользователю удалять строки из таблицы или представления.
ИНДЕКС
Это позволяет пользователю вставить строку в таблицу или представление. Он также может запустить утилиту импорта.
РЕКОМЕНДАЦИИ
Это позволяет пользователям создавать и удалять внешний ключ.
ВЫБРАТЬ
Это позволяет пользователю получать строки из таблицы или представления.
ОБНОВИТЬ
Позволяет пользователю изменять записи в таблице, просматривать.
Пакетные привилегии
Пользователь должен иметь полномочия CONNECT для базы данных. Пакет — это объект базы данных, который содержит информацию менеджера базы данных для наиболее эффективного доступа к данным для конкретного приложения.
КОНТРОЛЬ
Он предоставляет пользователю привилегии перепривязывания, удаления или выполнения пакетов. Пользователю с этими привилегиями предоставляются привилегии BIND и EXECUTE.
BIND
Это позволяет пользователю связывать или перепривязывать этот пакет.
ВЫПОЛНИТЬ
Позволяет выполнить пакет.
Индекс привилегий
Эта привилегия автоматически получает привилегию CONTROL для индекса.
Привилегии последовательности
Sequence автоматически получает привилегии USAGE и ALTER для последовательности.
Обычные привилегии
Он включает в себя действие подпрограмм, таких как функции, процедуры и методы в базе данных.