8
Схема
Суперпользователь
создает роли
Администратор ОС
запрещает доступ суперпользователя
Административная роль
создает базу
Суперпользователь (временный доступ)
создает схему
назначает администратора безопасности
назначает владельца
v_owner
v_admin
db_admin
v_user
v_db
v_schema
postgres
Теперь уже можно создать зону повышенной безопасности —
защищенную схему. Мы будем показывать одну, но, конечно, таких схем
может быть несколько, и они могут принадлежать разным владельцам.
Команда ALTER SCHEMA … SECURITY OFFICER TO … устанавливает
для схемы атрибут — роль администратора безопасности. После
этого только указанная роль может управлять доступом к схеме и
объектам в ней — схема становится защищенной.
Атрибут можно сбросить командой ALTER SCHEMA … RESET
SECURITY OFFICER. Тогда схема снова станет незащищенной.
Эти действия выполняет суперпользователь, для чего администратор
ОС должен обеспечить ему временное подключение к экземпляру.
После назначения администратора безопасности можно передать
владение схемой выделенной роли, не являющейся
суперпользователем.
При организации зоны повышенной безопасности можно использовать
более простой подход: схему создает ее владелец, а
суперпользователь только назначает администратора безопасности.
Однако при этом появляется риск передачи привилегий на схему
другим ролям до того, как схема станет защищенной.