Виртуальная частная база данных (VPD)
Виртуальная частная база данных (VPD) — самая популярная защищенная база данных, представленная Oracle Database Enterprise. Он используется, когда привилегии объекта и роли базы данных не соответствуют требованиям безопасности. Политики или протоколы прямо пропорциональны требованиям безопасности.
VPD связан с функцией «контекст приложения», и эти контексты используются для управления данными во время выполнения операторов SQL. Сложный пример VPD может считывать контекст приложения во время триггера входа, а простой пример VPD может ограничивать доступ к данным в рабочее время.
Преимущества ВПД:
- Более высокая доступность: пользователи могут легко получить доступ к данным из любого места.
- Гибкость: его можно легко изменить, не нарушая поток управления.
- Более высокая скорость восстановления: данные могут быть извлечены очень легко.
- Динамическая защита: нет необходимости поддерживать сложные роли.
- Никаких лазеек: политика безопасности привязана к данным, поэтому обход невозможен.
Недостатки ВПД:
- Сложная безопасность на уровне столбца.
- Для использования этой службы требуется идентификатор учетной записи Oracle.
- Тяжело обследовать.
Существуют следующие примеры ВПД:
Пример 1: Пользователь может видеть данные столбца account_mgr_id «149» из 1-й таблицы. Он будет специфичен только для себя, если не будут предоставлены дополнительные запросы. VPD может выполнять данные, которые были запрошены.
Пример 2 : В VPD не возникло проблем с безопасностью приложения, поскольку его нельзя обойти, и все протоколы связаны с таблицей клиентов. В приведенном ниже примере клиент может видеть свои заказы в таблице заказов.
Пример 3. В данном изображении скрытый запрос применяется для сокрытия данных, которые могут быть конфиденциальными, чтобы их можно было полностью защитить, и пользователи имели контроль над доступом к другим, кроме скрытого.