🗊Презентация Безопасность систем баз данных. Управление доступом в СУБД

Категория: Информатика
Нажмите для полного просмотра!
Безопасность систем баз данных. Управление доступом в СУБД, слайд №1Безопасность систем баз данных. Управление доступом в СУБД, слайд №2Безопасность систем баз данных. Управление доступом в СУБД, слайд №3Безопасность систем баз данных. Управление доступом в СУБД, слайд №4Безопасность систем баз данных. Управление доступом в СУБД, слайд №5Безопасность систем баз данных. Управление доступом в СУБД, слайд №6Безопасность систем баз данных. Управление доступом в СУБД, слайд №7Безопасность систем баз данных. Управление доступом в СУБД, слайд №8Безопасность систем баз данных. Управление доступом в СУБД, слайд №9Безопасность систем баз данных. Управление доступом в СУБД, слайд №10Безопасность систем баз данных. Управление доступом в СУБД, слайд №11Безопасность систем баз данных. Управление доступом в СУБД, слайд №12Безопасность систем баз данных. Управление доступом в СУБД, слайд №13Безопасность систем баз данных. Управление доступом в СУБД, слайд №14Безопасность систем баз данных. Управление доступом в СУБД, слайд №15Безопасность систем баз данных. Управление доступом в СУБД, слайд №16Безопасность систем баз данных. Управление доступом в СУБД, слайд №17Безопасность систем баз данных. Управление доступом в СУБД, слайд №18Безопасность систем баз данных. Управление доступом в СУБД, слайд №19Безопасность систем баз данных. Управление доступом в СУБД, слайд №20Безопасность систем баз данных. Управление доступом в СУБД, слайд №21Безопасность систем баз данных. Управление доступом в СУБД, слайд №22Безопасность систем баз данных. Управление доступом в СУБД, слайд №23Безопасность систем баз данных. Управление доступом в СУБД, слайд №24Безопасность систем баз данных. Управление доступом в СУБД, слайд №25Безопасность систем баз данных. Управление доступом в СУБД, слайд №26Безопасность систем баз данных. Управление доступом в СУБД, слайд №27Безопасность систем баз данных. Управление доступом в СУБД, слайд №28Безопасность систем баз данных. Управление доступом в СУБД, слайд №29Безопасность систем баз данных. Управление доступом в СУБД, слайд №30Безопасность систем баз данных. Управление доступом в СУБД, слайд №31Безопасность систем баз данных. Управление доступом в СУБД, слайд №32Безопасность систем баз данных. Управление доступом в СУБД, слайд №33Безопасность систем баз данных. Управление доступом в СУБД, слайд №34Безопасность систем баз данных. Управление доступом в СУБД, слайд №35Безопасность систем баз данных. Управление доступом в СУБД, слайд №36Безопасность систем баз данных. Управление доступом в СУБД, слайд №37Безопасность систем баз данных. Управление доступом в СУБД, слайд №38Безопасность систем баз данных. Управление доступом в СУБД, слайд №39Безопасность систем баз данных. Управление доступом в СУБД, слайд №40Безопасность систем баз данных. Управление доступом в СУБД, слайд №41Безопасность систем баз данных. Управление доступом в СУБД, слайд №42Безопасность систем баз данных. Управление доступом в СУБД, слайд №43Безопасность систем баз данных. Управление доступом в СУБД, слайд №44Безопасность систем баз данных. Управление доступом в СУБД, слайд №45Безопасность систем баз данных. Управление доступом в СУБД, слайд №46Безопасность систем баз данных. Управление доступом в СУБД, слайд №47Безопасность систем баз данных. Управление доступом в СУБД, слайд №48Безопасность систем баз данных. Управление доступом в СУБД, слайд №49Безопасность систем баз данных. Управление доступом в СУБД, слайд №50Безопасность систем баз данных. Управление доступом в СУБД, слайд №51Безопасность систем баз данных. Управление доступом в СУБД, слайд №52Безопасность систем баз данных. Управление доступом в СУБД, слайд №53Безопасность систем баз данных. Управление доступом в СУБД, слайд №54Безопасность систем баз данных. Управление доступом в СУБД, слайд №55Безопасность систем баз данных. Управление доступом в СУБД, слайд №56Безопасность систем баз данных. Управление доступом в СУБД, слайд №57Безопасность систем баз данных. Управление доступом в СУБД, слайд №58Безопасность систем баз данных. Управление доступом в СУБД, слайд №59Безопасность систем баз данных. Управление доступом в СУБД, слайд №60Безопасность систем баз данных. Управление доступом в СУБД, слайд №61Безопасность систем баз данных. Управление доступом в СУБД, слайд №62Безопасность систем баз данных. Управление доступом в СУБД, слайд №63Безопасность систем баз данных. Управление доступом в СУБД, слайд №64Безопасность систем баз данных. Управление доступом в СУБД, слайд №65Безопасность систем баз данных. Управление доступом в СУБД, слайд №66Безопасность систем баз данных. Управление доступом в СУБД, слайд №67Безопасность систем баз данных. Управление доступом в СУБД, слайд №68Безопасность систем баз данных. Управление доступом в СУБД, слайд №69Безопасность систем баз данных. Управление доступом в СУБД, слайд №70Безопасность систем баз данных. Управление доступом в СУБД, слайд №71Безопасность систем баз данных. Управление доступом в СУБД, слайд №72Безопасность систем баз данных. Управление доступом в СУБД, слайд №73Безопасность систем баз данных. Управление доступом в СУБД, слайд №74Безопасность систем баз данных. Управление доступом в СУБД, слайд №75Безопасность систем баз данных. Управление доступом в СУБД, слайд №76Безопасность систем баз данных. Управление доступом в СУБД, слайд №77Безопасность систем баз данных. Управление доступом в СУБД, слайд №78Безопасность систем баз данных. Управление доступом в СУБД, слайд №79Безопасность систем баз данных. Управление доступом в СУБД, слайд №80Безопасность систем баз данных. Управление доступом в СУБД, слайд №81Безопасность систем баз данных. Управление доступом в СУБД, слайд №82Безопасность систем баз данных. Управление доступом в СУБД, слайд №83Безопасность систем баз данных. Управление доступом в СУБД, слайд №84Безопасность систем баз данных. Управление доступом в СУБД, слайд №85Безопасность систем баз данных. Управление доступом в СУБД, слайд №86Безопасность систем баз данных. Управление доступом в СУБД, слайд №87Безопасность систем баз данных. Управление доступом в СУБД, слайд №88Безопасность систем баз данных. Управление доступом в СУБД, слайд №89Безопасность систем баз данных. Управление доступом в СУБД, слайд №90Безопасность систем баз данных. Управление доступом в СУБД, слайд №91Безопасность систем баз данных. Управление доступом в СУБД, слайд №92

Содержание

Вы можете ознакомиться и скачать презентацию на тему Безопасность систем баз данных. Управление доступом в СУБД. Доклад-сообщение содержит 92 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





Безопасность 
систем баз данных
4. Управление доступом в СУБД
Описание слайда:
Безопасность систем баз данных 4. Управление доступом в СУБД

Слайд 2





Управление доступом в СУБД
Процедура и/а выполняет функцию глобального контроля прав пользователя по доступу в систему в целом. 
Однако использование даже самых надежных процедур и/а в большинстве случаев оказывается недостаточным для решения вопроса о допустимости выполнения любых операций с конкретными данными. 
В БД каждое групповое данное должно иметь связанный с ним (данным) набор ограничений доступа. 
Процедуры регулирования допустимых действий пользователей по отношению к различным данным в БД называют авторизацией (от англ. authorization – разрешение, уполномочивание) или управлением доступом (или контролем доступа).
Описание слайда:
Управление доступом в СУБД Процедура и/а выполняет функцию глобального контроля прав пользователя по доступу в систему в целом. Однако использование даже самых надежных процедур и/а в большинстве случаев оказывается недостаточным для решения вопроса о допустимости выполнения любых операций с конкретными данными. В БД каждое групповое данное должно иметь связанный с ним (данным) набор ограничений доступа. Процедуры регулирования допустимых действий пользователей по отношению к различным данным в БД называют авторизацией (от англ. authorization – разрешение, уполномочивание) или управлением доступом (или контролем доступа).

Слайд 3





Субъекты и объекты доступа
При управлении доступом в СУБД различают два вида сущностей – активные и пассивные. Активные сущности (субъекты) осуществляют доступ к пассивным сущностям – объектам. 
Субъекты – это пользователи или приложения. 
Первичные объекты, к которым регулируется доступ: 
БД в целом; 
отношения (таблицы); 
представления;
процедуры.
Описание слайда:
Субъекты и объекты доступа При управлении доступом в СУБД различают два вида сущностей – активные и пассивные. Активные сущности (субъекты) осуществляют доступ к пассивным сущностям – объектам. Субъекты – это пользователи или приложения. Первичные объекты, к которым регулируется доступ: БД в целом; отношения (таблицы); представления; процедуры.

Слайд 4





Вторичные объекты доступа
Вторичными объектами доступа могут быть:
формы; 
отчеты; 
запросы;
прикладные программы (ПП); 
процедуры;
диаграммы и т.п. 
В большинстве типов СУБД возможность для субъекта пользоваться вторичными объектами определяется правами его доступа к соответствующим первичным объектам.
Описание слайда:
Вторичные объекты доступа Вторичными объектами доступа могут быть: формы; отчеты; запросы; прикладные программы (ПП); процедуры; диаграммы и т.п. В большинстве типов СУБД возможность для субъекта пользоваться вторичными объектами определяется правами его доступа к соответствующим первичным объектам.

Слайд 5





Требования по безопасности  в реляционных СУБД 
Разные пользователи могут иметь доступ только к строго определенным совокупностям таблиц;
Разные пользователи могут иметь право на строго определенный перечень операций над данными конкретных таблиц; 
Разные пользователи могут иметь только выборочный доступ к определенным элементам конкретных таблиц (отдельным строкам и столбцам);
Доступ определенных пользователей к определенной совокупности таблиц может быть запрещен непосредственно (через запросы), но разрешен в диалоге с прикладной программой.
Описание слайда:
Требования по безопасности в реляционных СУБД Разные пользователи могут иметь доступ только к строго определенным совокупностям таблиц; Разные пользователи могут иметь право на строго определенный перечень операций над данными конкретных таблиц; Разные пользователи могут иметь только выборочный доступ к определенным элементам конкретных таблиц (отдельным строкам и столбцам); Доступ определенных пользователей к определенной совокупности таблиц может быть запрещен непосредственно (через запросы), но разрешен в диалоге с прикладной программой.

Слайд 6





Схема доступа к данным в реляционных СУБД 
СУБД от имени конкретного субъекта выполняет конкретные операции над объектами БД в зависимости от прав, предоставленных субъекту на выполнение этих операций.
Доступом к объектам БД можно управлять – разрешать доступ или защищать от доступа. 
Конкретный субъект обладает конкретными правами доступа к конкретному объекту.
Совокупность операций, которые разрешено выполнять конкретному субъекту над конкретными объектами определяют привилегии (priveleges).
Описание слайда:
Схема доступа к данным в реляционных СУБД СУБД от имени конкретного субъекта выполняет конкретные операции над объектами БД в зависимости от прав, предоставленных субъекту на выполнение этих операций. Доступом к объектам БД можно управлять – разрешать доступ или защищать от доступа. Конкретный субъект обладает конкретными правами доступа к конкретному объекту. Совокупность операций, которые разрешено выполнять конкретному субъекту над конкретными объектами определяют привилегии (priveleges).

Слайд 7





Категории пользователей СУБД
В больших многопользовательских БД пользователи СУБД обычно разбиты на 3 категории:
администратор сервера БД - ведает установкой, конфигурированием сервера, регистрацией пользователей, групп, ролей и т. п.;
администратор БД - пользователь, создавший свою БД, и являющийся ее владельцем - предоставляет другим пользователям доступ к своей БД и к содержащимся в ней объектам, отвечает за ее сохранение и восстановление;
прочие (конечные) пользователи - оперируют данными БД, в рамках выделенных им привилегий.
Описание слайда:
Категории пользователей СУБД В больших многопользовательских БД пользователи СУБД обычно разбиты на 3 категории: администратор сервера БД - ведает установкой, конфигурированием сервера, регистрацией пользователей, групп, ролей и т. п.; администратор БД - пользователь, создавший свою БД, и являющийся ее владельцем - предоставляет другим пользователям доступ к своей БД и к содержащимся в ней объектам, отвечает за ее сохранение и восстановление; прочие (конечные) пользователи - оперируют данными БД, в рамках выделенных им привилегий.

Слайд 8





Первоначальная учетная запись для администраторов БД 
Как правило, для администраторов БД сделана первоначальная учетная запись, чтобы сделать первоначальный вход в систему. 
Например, 
в InterBase: SISDBA с masterkey; 
в SQL-server: SA и пустой пароль; 
в Oracle есть три начальных учетных записи: SIS, SYSTEM и MANAGER.
Описание слайда:
Первоначальная учетная запись для администраторов БД Как правило, для администраторов БД сделана первоначальная учетная запись, чтобы сделать первоначальный вход в систему. Например, в InterBase: SISDBA с masterkey; в SQL-server: SA и пустой пароль; в Oracle есть три начальных учетных записи: SIS, SYSTEM и MANAGER.

Слайд 9





Категории пользователей 
в СУБД ЛИНТЕР
Пример категорий пользователей в СУБД ЛИНТЕР: 
администратор базы данных – категория DBA. Он управляет созданием БД, ее конфигурированием, регистрацией пользователей, групп, ролей, записью регистрационной информации и т.п.
привилегированные пользователи БД – категория RESOURCE. Это пользователи, которые имеют право на создание собственных объектов БД и управление привилегиями доступа к ним.
пользователи БД – категория CONNECT оперируют с объектами БД в рамках выделенных им привилегий доступа.
Описание слайда:
Категории пользователей в СУБД ЛИНТЕР Пример категорий пользователей в СУБД ЛИНТЕР: администратор базы данных – категория DBA. Он управляет созданием БД, ее конфигурированием, регистрацией пользователей, групп, ролей, записью регистрационной информации и т.п. привилегированные пользователи БД – категория RESOURCE. Это пользователи, которые имеют право на создание собственных объектов БД и управление привилегиями доступа к ним. пользователи БД – категория CONNECT оперируют с объектами БД в рамках выделенных им привилегий доступа.

Слайд 10





Виды привилегий в СУБД
Привилегии в СУБД можно подразделить на две категории: 
привилегии безопасности – позволяют выполнять административные действия в БД;
привилегии доступа – определяют права доступа субъектов к объектам БД.
Привилегии безопасности всегда выделяются конкретному пользователю (а не группе, роли или всем) при его создании (оператором CRЕATE USER) или при изменения его привилегий (оператором ALTER USЕR). 
Набор привилегий безопасности определяется разработчиком СУБД.
Описание слайда:
Виды привилегий в СУБД Привилегии в СУБД можно подразделить на две категории: привилегии безопасности – позволяют выполнять административные действия в БД; привилегии доступа – определяют права доступа субъектов к объектам БД. Привилегии безопасности всегда выделяются конкретному пользователю (а не группе, роли или всем) при его создании (оператором CRЕATE USER) или при изменения его привилегий (оператором ALTER USЕR). Набор привилегий безопасности определяется разработчиком СУБД.

Слайд 11





Привилегии безопасности 
в СУБД INGRES 
security – право управлять всей безопасностью СУБД  (админ сервера БД, а также лицо, отвечающее за ИБ);
createdb – право на создание и удаление БД (адм. сервера БД и адм. отдельных БД);
operator – право на выполнение действий оператора (адм. сервера БД и адм. отдельных БД, админ ОС);
maintain locations – право на управление расположением БД на дисках (адм. сервера БД и адм. ОС);
trace – право на изменение состояния флагов отладочной трассировки СУБД (адм. сервера БД и другие знающие пользователи при анализе сложных ситуаций).
Описание слайда:
Привилегии безопасности в СУБД INGRES security – право управлять всей безопасностью СУБД (админ сервера БД, а также лицо, отвечающее за ИБ); createdb – право на создание и удаление БД (адм. сервера БД и адм. отдельных БД); operator – право на выполнение действий оператора (адм. сервера БД и адм. отдельных БД, админ ОС); maintain locations – право на управление расположением БД на дисках (адм. сервера БД и адм. ОС); trace – право на изменение состояния флагов отладочной трассировки СУБД (адм. сервера БД и другие знающие пользователи при анализе сложных ситуаций).

Слайд 12





Установление привилегий безопасности
Пример. Заводится пользователь Bill с правом на создание БД и на выполнение функций оператора:
CREATE USER Bill
WITH PRIVILEGES createdb, operator;
     {создать пользователя Bill с привилегиями createdb  
        и operator}.
Для пользователя можно определить подразумеваемую группу:
CREATE USER Mary
WITH GROUP shoe_grp
     {создать пользователя Mary с подразумеваемой группой}.
Описание слайда:
Установление привилегий безопасности Пример. Заводится пользователь Bill с правом на создание БД и на выполнение функций оператора: CREATE USER Bill WITH PRIVILEGES createdb, operator; {создать пользователя Bill с привилегиями createdb и operator}. Для пользователя можно определить подразумеваемую группу: CREATE USER Mary WITH GROUP shoe_grp {создать пользователя Mary с подразумеваемой группой}.

Слайд 13





Изменение привилегий безопасности 
Все последующие изменения привилегий безопасности выполняются посредством оператора ALTER USER. Оператор DROP USER позволяет удалить пользователя. 
Примеры:
ALTER USER Bill
DROP PRIVILEGES createdb;
     {лишить пользователя Bill права на создание БД}.
DROP USER Bill;
     {удалить пользователя Bill}.
Описание слайда:
Изменение привилегий безопасности Все последующие изменения привилегий безопасности выполняются посредством оператора ALTER USER. Оператор DROP USER позволяет удалить пользователя. Примеры: ALTER USER Bill DROP PRIVILEGES createdb; {лишить пользователя Bill права на создание БД}. DROP USER Bill; {удалить пользователя Bill}.

Слайд 14





Привилегии доступа 
В СУБД авторизация доступа к данным осуществляется с помощью привилегий доступа. 
Установление привилегий доступа зависит от вида управления доступом. Для ДУД – это задача владельца объекта. Для ПУД – это задача админа БД. 
Контроль привилегий доступа, независимо от вида управления доступом, обычно, возлагается на админа БД. 
Создавать и удалять именованные носители привилегий, а также изменять их характеристики может лишь пользователь с привилегией security. При этом необходимо иметь подключение к служебной БД, в которой хранятся сведения о субъектах и их привилегиях.
Описание слайда:
Привилегии доступа В СУБД авторизация доступа к данным осуществляется с помощью привилегий доступа. Установление привилегий доступа зависит от вида управления доступом. Для ДУД – это задача владельца объекта. Для ПУД – это задача админа БД. Контроль привилегий доступа, независимо от вида управления доступом, обычно, возлагается на админа БД. Создавать и удалять именованные носители привилегий, а также изменять их характеристики может лишь пользователь с привилегией security. При этом необходимо иметь подключение к служебной БД, в которой хранятся сведения о субъектах и их привилегиях.

Слайд 15





Привилегии доступа 
Набор привилегий можно определить для конкретного пользователя, группы, роли или всех пользователей. 
Объектом защиты может быть БД, таблица, представление, хранимая процедура и т.д. 
Субъектом защиты может быть пользователь, группа пользователей, роль, хранимая процедура (если это предусмотрено реализацией СУБД).
Привилегии устанавливаются и отменяются операторами языка SQL: GRANT (передать) и REVOKE (отобрать). 
Оператор GRANT указывает конкретного пользователя, который получает конкретные привилегии доступа к указанной таблице.
Описание слайда:
Привилегии доступа Набор привилегий можно определить для конкретного пользователя, группы, роли или всех пользователей. Объектом защиты может быть БД, таблица, представление, хранимая процедура и т.д. Субъектом защиты может быть пользователь, группа пользователей, роль, хранимая процедура (если это предусмотрено реализацией СУБД). Привилегии устанавливаются и отменяются операторами языка SQL: GRANT (передать) и REVOKE (отобрать). Оператор GRANT указывает конкретного пользователя, который получает конкретные привилегии доступа к указанной таблице.

Слайд 16





Установление привилегий 
Конкретный пользователь СУБД опознается по уникальному идентификатору (user-id). Любое действие над БД, любой оператор языка SQL всегда выполняется не анонимно, а от имени конкретного пользователя. 
Идентификатор пользователя определяет набор доступных объектов БД для конкретного физического лица или группы лиц. Для того, чтобы связать идентификатор пользователя с конкретным оператором SQL, в большинстве СУБД используется сеанс работы с БД, в начале которого пользователь сообщает СУБД свой идентификатор и пароль. Все операции над БД, которые будут выполнены после этого, СУБД свяжет с этим конкретным пользователем.
Описание слайда:
Установление привилегий Конкретный пользователь СУБД опознается по уникальному идентификатору (user-id). Любое действие над БД, любой оператор языка SQL всегда выполняется не анонимно, а от имени конкретного пользователя. Идентификатор пользователя определяет набор доступных объектов БД для конкретного физического лица или группы лиц. Для того, чтобы связать идентификатор пользователя с конкретным оператором SQL, в большинстве СУБД используется сеанс работы с БД, в начале которого пользователь сообщает СУБД свой идентификатор и пароль. Все операции над БД, которые будут выполнены после этого, СУБД свяжет с этим конкретным пользователем.

Слайд 17





Управление привилегиями 
Примеры.
Назначение привилегии субъекту: 
  GRANT привилегия [ON объект] TO субъект WITH GRANT OPTION]
Отмена привилегии субъекту: 
   REVOKE привилегия [ON объект] FROM субъект
Назначение привилегии всем пользователям системы :
      GRANT привилегия [ON объект] TO PUBLIC
Отмена привилегии всем пользователям системы:
   REVOKE привилегия [ON объект] FROM PUBLIC
Описание слайда:
Управление привилегиями Примеры. Назначение привилегии субъекту: GRANT привилегия [ON объект] TO субъект WITH GRANT OPTION] Отмена привилегии субъекту: REVOKE привилегия [ON объект] FROM субъект Назначение привилегии всем пользователям системы :   GRANT привилегия [ON объект] TO PUBLIC Отмена привилегии всем пользователям системы: REVOKE привилегия [ON объект] FROM PUBLIC

Слайд 18





Управление привилегиями 
Оператор GRANT может содержать необязательную часть, принципиально важную для защиты СУБД. Имеется в виду конструкция
   GRANT ...
   ...
   WITH GRANT OPTION.
Подобный оператор GRANT передает не только указанные в нем привилегии, но и права на их дальнейшую передачу. Очевидно, что использование конструкции WITH GRANT OPTION ведет к децентрализации контроля над привилегиями и содержит потенциальную угрозу безопасности данных.
Описание слайда:
Управление привилегиями Оператор GRANT может содержать необязательную часть, принципиально важную для защиты СУБД. Имеется в виду конструкция GRANT ... ... WITH GRANT OPTION. Подобный оператор GRANT передает не только указанные в нем привилегии, но и права на их дальнейшую передачу. Очевидно, что использование конструкции WITH GRANT OPTION ведет к децентрализации контроля над привилегиями и содержит потенциальную угрозу безопасности данных.

Слайд 19





Группы
Для облегчения процесса администрирования большого количества пользователей их объединяют в группы. 
Применяются три способа сочетания индивидуальных и групповых прав в доступах пользователей:
Один и тот же идентификатор используется для доступа к БД целой группы физических лиц. 
Конкретному физическому лицу присваивается уникальный идентификатор. 
Одновременно поддерживается идентификатор пользователя и идентификатор группы пользователей.
Описание слайда:
Группы Для облегчения процесса администрирования большого количества пользователей их объединяют в группы. Применяются три способа сочетания индивидуальных и групповых прав в доступах пользователей: Один и тот же идентификатор используется для доступа к БД целой группы физических лиц. Конкретному физическому лицу присваивается уникальный идентификатор. Одновременно поддерживается идентификатор пользователя и идентификатор группы пользователей.

Слайд 20





Группы
Когда пользователь тем или иным способом инициирует сеанс работы с БД, он может указать, от имени какой из своих групп он выступает. Кроме того, для пользователя обычно определяют подразумеваемую группу.
Совокупность всех пользователей именуется как PUBLIC. Придание привилегий PUBLIC – удобный способ задать подразумеваемые права доступа.
Прежде чем присваивать привилегии группам и ролям, их (группы и роли) необходимо создать.
Описание слайда:
Группы Когда пользователь тем или иным способом инициирует сеанс работы с БД, он может указать, от имени какой из своих групп он выступает. Кроме того, для пользователя обычно определяют подразумеваемую группу. Совокупность всех пользователей именуется как PUBLIC. Придание привилегий PUBLIC – удобный способ задать подразумеваемые права доступа. Прежде чем присваивать привилегии группам и ролям, их (группы и роли) необходимо создать.

Слайд 21





Создание и изменение групп
Группы создаются с помощью оператора CRFATE GROUP:
CREATE GROUP sales
WITH USERS = (Bill, Mary, Joe);
{Создать группу sales с пользователями Bill, Mary, Jое}.
Для изменения группы служит оператор ALTER GROUP:
ALTER GROUP sales
ADD USERS (Austin);
{Добавить в группу sales пользователя Аustin}
      ALTER GROUP sales
      DRОР USERS (Joe);
      {Удалить из группы sales пользователя Joe}.
Описание слайда:
Создание и изменение групп Группы создаются с помощью оператора CRFATE GROUP: CREATE GROUP sales WITH USERS = (Bill, Mary, Joe); {Создать группу sales с пользователями Bill, Mary, Jое}. Для изменения группы служит оператор ALTER GROUP: ALTER GROUP sales ADD USERS (Austin); {Добавить в группу sales пользователя Аustin} ALTER GROUP sales DRОР USERS (Joe); {Удалить из группы sales пользователя Joe}.

Слайд 22





Удаление групп
Оператор DROP GROUP позволяет удалять группы, правда только после того, как опустошен список членов группы:
ALTER GROUP sales
DROP all;
{Опустошить список членов группы sales}
DROP GROUP sales;
{Удалить группу sales}.
Описание слайда:
Удаление групп Оператор DROP GROUP позволяет удалять группы, правда только после того, как опустошен список членов группы: ALTER GROUP sales DROP all; {Опустошить список членов группы sales} DROP GROUP sales; {Удалить группу sales}.

Слайд 23





Роли в СУБД
Одна из проблем защиты данных в СУБД возникает по той причине, что с БД работают как прикладные программы (ПП), так и пользователи, которые их запускают. 
Запуск ПП пользователями с различными правами доступа к данным, может приводить к нарушению безопасности в БД. 
Решение этой проблемы заключается в том, чтобы ПП были приданы свои, не связанные с конкретным пользователем, привилегии доступа к объектам БД, которые она обрабатывает. 
При этом админу не нужно каждый раз при запуске пользователями ПП заботиться о соответствии привилегий пользователей и ПП.
Описание слайда:
Роли в СУБД Одна из проблем защиты данных в СУБД возникает по той причине, что с БД работают как прикладные программы (ПП), так и пользователи, которые их запускают. Запуск ПП пользователями с различными правами доступа к данным, может приводить к нарушению безопасности в БД. Решение этой проблемы заключается в том, чтобы ПП были приданы свои, не связанные с конкретным пользователем, привилегии доступа к объектам БД, которые она обрабатывает. При этом админу не нужно каждый раз при запуске пользователями ПП заботиться о соответствии привилегий пользователей и ПП.

Слайд 24





Роли в СУБД
В современных СУБД  это решение обеспечивается механизмом ролей (role). При этом роль выступает в качестве промежуточной сущности между пользователями и их привилегиями. Роль реализуется как отдельный именованный объект, хранящийся в БД. 
Роль связывается с конкретной ПП для придания последней привилегий доступа к БД, таблицам, представлениям и процедурам БД. 
Роль создается и удаляется администратором БД. 
С ролью не ассоциируют перечень допустимых пользователей, ˗ вместо этого роли защищают паролями, если это предусмотрено производителем СУБД.
Описание слайда:
Роли в СУБД В современных СУБД это решение обеспечивается механизмом ролей (role). При этом роль выступает в качестве промежуточной сущности между пользователями и их привилегиями. Роль реализуется как отдельный именованный объект, хранящийся в БД. Роль связывается с конкретной ПП для придания последней привилегий доступа к БД, таблицам, представлениям и процедурам БД. Роль создается и удаляется администратором БД. С ролью не ассоциируют перечень допустимых пользователей, ˗ вместо этого роли защищают паролями, если это предусмотрено производителем СУБД.

Слайд 25





Роли в СУБД
Роли также удобно использовать, когда тот или иной набор привилегий необходимо выдать (или отобрать) целой группе пользователей. С одной стороны, это облегчает администратору управление привилегиями, с другой ˗ вносит определенный порядок в случае необходимости изменить набор привилегий для группы пользователей сразу. 
В целом же, механизм ролей позволяет обеспечить приемлемую безопасность систем БД при малых трудозатратах на выдачу и отбор привилегий пользователям.
Описание слайда:
Роли в СУБД Роли также удобно использовать, когда тот или иной набор привилегий необходимо выдать (или отобрать) целой группе пользователей. С одной стороны, это облегчает администратору управление привилегиями, с другой ˗ вносит определенный порядок в случае необходимости изменить набор привилегий для группы пользователей сразу. В целом же, механизм ролей позволяет обеспечить приемлемую безопасность систем БД при малых трудозатратах на выдачу и отбор привилегий пользователям.

Слайд 26





Создание и удаление ролей
Создание роли с паролем: 
CREATE ROLE dly sales
WITH PASSWORD = ‘e11332’
Оператор  ALTER ROLE служит для изменения пароля роли:
ALTER ROLE dly_sales
WITH PASSWORD = ‘h94pq861’
Оператор DROP ROLE позволяет удалить ранее созданную роль:
DROP ROLE dly_sales.
Описание слайда:
Создание и удаление ролей Создание роли с паролем: CREATE ROLE dly sales WITH PASSWORD = ‘e11332’ Оператор ALTER ROLE служит для изменения пароля роли: ALTER ROLE dly_sales WITH PASSWORD = ‘h94pq861’ Оператор DROP ROLE позволяет удалить ранее созданную роль: DROP ROLE dly_sales.

Слайд 27





Предоставление роли привилегий
Как только роль создана, ей можно предоставить привилегии доступа к объектам БД. Если субъект  пользователь, привилегии назначаются явно. Если субъект  роль, то для управления привилегиями используются предложения:
GRANT ROLE имя_роли [ON объект] TO субъект [WITH GRANT OPTION]
Пример:
GRANT ROLE salesClerk 
TO Mary; 
{Предоставить пользователю Mary привилегию роли salesClerk}.
Описание слайда:
Предоставление роли привилегий Как только роль создана, ей можно предоставить привилегии доступа к объектам БД. Если субъект  пользователь, привилегии назначаются явно. Если субъект  роль, то для управления привилегиями используются предложения: GRANT ROLE имя_роли [ON объект] TO субъект [WITH GRANT OPTION] Пример: GRANT ROLE salesClerk TO Mary; {Предоставить пользователю Mary привилегию роли salesClerk}.

Слайд 28





Изъятие привилегий роли 
Для изъятия привилегий роли используется предложение: 
REVOKE ROLE salesClerk
FROM Mary
{Изъять  привилегию роли  salesClerk  у пользователя Mary}.
Описание слайда:
Изъятие привилегий роли Для изъятия привилегий роли используется предложение: REVOKE ROLE salesClerk FROM Mary {Изъять привилегию роли salesClerk у пользователя Mary}.

Слайд 29





Представления
При использовании дискреционной модели получается, что доступ регулируется на уровне именованных объектов, а не на уровне собственно хранящихся в них данных. 
Так, в реляционной СУБД объектом будет, например, именованное таблица, а субъектом - зарегистрированный пользователь. 
В этом случае нельзя ограничить доступ только к части информации, хранящейся в таблице. 
Частично проблему регулирования доступа к данным внутри объектов решают представления (Views).
Описание слайда:
Представления При использовании дискреционной модели получается, что доступ регулируется на уровне именованных объектов, а не на уровне собственно хранящихся в них данных. Так, в реляционной СУБД объектом будет, например, именованное таблица, а субъектом - зарегистрированный пользователь. В этом случае нельзя ограничить доступ только к части информации, хранящейся в таблице. Частично проблему регулирования доступа к данным внутри объектов решают представления (Views).

Слайд 30





Представления
Результатом запроса на выборку является набор данных, представляющий временную таблицу, с которой можно работать как с обычной реляционной таблицей. 
В результате серии таких запросов для пользователя создается некая виртуальная БД со «своей» схемой данных и «своими» данными.
Представления позволяют сделать видимыми для субъектов только определенные столбцы базовых таблиц (реализовать проекцию) или отобрать определенные строки (реализовать селекцию).
Описание слайда:
Представления Результатом запроса на выборку является набор данных, представляющий временную таблицу, с которой можно работать как с обычной реляционной таблицей. В результате серии таких запросов для пользователя создается некая виртуальная БД со «своей» схемой данных и «своими» данными. Представления позволяют сделать видимыми для субъектов только определенные столбцы базовых таблиц (реализовать проекцию) или отобрать определенные строки (реализовать селекцию).

Слайд 31





Схема техники представлений
Описание слайда:
Схема техники представлений

Слайд 32





Представления как защита данных в СУБД
Авторизованный характер запросов, формирующих представления, позволяет предоставить конкретному пользователю только те данные и только в том виде, которые ему необходимы для решения его задач. 
Исключается возможность доступа, просмотра и изменения других данных, не имеющих отношения к данному пользователю. 
 С помощью представления администратор БД защищает таблицы от НСД и снабжает каждого пользователя своим видением БД, когда недоступные пользователю объекты как бы не существуют.
Описание слайда:
Представления как защита данных в СУБД Авторизованный характер запросов, формирующих представления, позволяет предоставить конкретному пользователю только те данные и только в том виде, которые ему необходимы для решения его задач. Исключается возможность доступа, просмотра и изменения других данных, не имеющих отношения к данному пользователю. С помощью представления администратор БД защищает таблицы от НСД и снабжает каждого пользователя своим видением БД, когда недоступные пользователю объекты как бы не существуют.

Слайд 33





Обращение к представлению
К представлению можно обращаться точно так же, как и к таблицам, за исключением операций модификации данных, поскольку некоторые типы представлений являются не модифицируемыми. 
Возможность модификации представлений определяется производителем СУБД. 
Особенности выполнения операций модификации данных при использовании представлений связаны с ограниченным видением пользователей реальных таблиц, которое в общем случае не позволяет им объективно в рамках выделенных им полномочий проводить операции модификации.
Описание слайда:
Обращение к представлению К представлению можно обращаться точно так же, как и к таблицам, за исключением операций модификации данных, поскольку некоторые типы представлений являются не модифицируемыми. Возможность модификации представлений определяется производителем СУБД. Особенности выполнения операций модификации данных при использовании представлений связаны с ограниченным видением пользователей реальных таблиц, которое в общем случае не позволяет им объективно в рамках выделенных им полномочий проводить операции модификации.

Слайд 34





Хранение представлений
В конкретных реализациях представление обычно хранится как текст, описывающий запрос выборки, а не собственно выборку данных. 
Собственно выборка создается динамически на момент выполнения предложения SQL, использующего представление. 
Таким образом, при использовании представлений данные БД  находятся там же где и находились до создания представления.
Описание слайда:
Хранение представлений В конкретных реализациях представление обычно хранится как текст, описывающий запрос выборки, а не собственно выборку данных. Собственно выборка создается динамически на момент выполнения предложения SQL, использующего представление. Таким образом, при использовании представлений данные БД находятся там же где и находились до создания представления.

Слайд 35





Привилегии доступа к таблицам
Привилегии доступа имеют свои особенности для определенных видов объектов, к которым они относятся. 
Привилегии доступа к таблицам позволяют реализовать следующие основные требования по безопасности: 
разные пользователи могут иметь доступ только к строго определенным совокупностям таблиц;
разные пользователи могут иметь право на строго определенный перечень операций над данными конкретных таблиц (создание, чтение, модификация, удаление);
Описание слайда:
Привилегии доступа к таблицам Привилегии доступа имеют свои особенности для определенных видов объектов, к которым они относятся. Привилегии доступа к таблицам позволяют реализовать следующие основные требования по безопасности: разные пользователи могут иметь доступ только к строго определенным совокупностям таблиц; разные пользователи могут иметь право на строго определенный перечень операций над данными конкретных таблиц (создание, чтение, модификация, удаление);

Слайд 36





Привилегии доступа к таблицам
разные пользователи могут иметь только выборочный доступ к определенным элементам конкретных таблиц (отдельным строкам и отдельным столбцам);
доступ определенных пользователей к определенной совокупности таблиц может быть запрещен непосредственно (через запросы), но разрешен в диалоге с прикладной программой.
При управлении доступом к таблицам набор привилегий в реализации СУБД определяется производителем.
Описание слайда:
Привилегии доступа к таблицам разные пользователи могут иметь только выборочный доступ к определенным элементам конкретных таблиц (отдельным строкам и отдельным столбцам); доступ определенных пользователей к определенной совокупности таблиц может быть запрещен непосредственно (через запросы), но разрешен в диалоге с прикладной программой. При управлении доступом к таблицам набор привилегий в реализации СУБД определяется производителем.

Слайд 37





Привилегии доступа к таблицам
В качестве минимального набора выступают привилегии выборки и модификации данных:
SELECT  привилегия на выборку данных;
INSERT  привилегия на добавление данных;
DELETE  привилегия на удаление данных;
UPDATE  привилегия на обновление данных
Дополнительные привилегии изменения структуры таблиц:
  ALTER  изменение физической/логической структуры базовой таблицы (изменение размеров и числа файлов таблицы, введение дополнительного столбца и т.п.);
  INDEX  создание/удаление индексов на столбцы таблицы;
  ALL  все возможные действия над таблицей.
Описание слайда:
Привилегии доступа к таблицам В качестве минимального набора выступают привилегии выборки и модификации данных: SELECT  привилегия на выборку данных; INSERT  привилегия на добавление данных; DELETE  привилегия на удаление данных; UPDATE  привилегия на обновление данных Дополнительные привилегии изменения структуры таблиц: ALTER  изменение физической/логической структуры базовой таблицы (изменение размеров и числа файлов таблицы, введение дополнительного столбца и т.п.); INDEX  создание/удаление индексов на столбцы таблицы; ALL  все возможные действия над таблицей.

Слайд 38





Привилегий доступа к таблицам
Другие разновидности привилегий: 
CONTROL (IBM DB2) - комплексная привилегия управления структурой таблицы; 
REFERENCES - привилегия создания внешних ключей; 
RUNSTAT - выполнение сбора статистической информации по таблице 
и другие.
Описание слайда:
Привилегий доступа к таблицам Другие разновидности привилегий: CONTROL (IBM DB2) - комплексная привилегия управления структурой таблицы; REFERENCES - привилегия создания внешних ключей; RUNSTAT - выполнение сбора статистической информации по таблице и другие.

Слайд 39





Примеры предоставления привилегий доступа к таблицам
Пример предоставления пользователю Adrian право на выборку данных из таблицы продавцов:
GRANT SELECT 
ON salespeople 
TO Adrian.
Привилегии можно перечислять через запятую, например:
GRANT SELECT, INSERT, DELETE 
ON sales 
TO Joe, Adrian, Thomas
{Предоставить пользователям Joe, Adrian и Thomas право на выборку, добавление и удаление данных из таблицы sales}.
Описание слайда:
Примеры предоставления привилегий доступа к таблицам Пример предоставления пользователю Adrian право на выборку данных из таблицы продавцов: GRANT SELECT ON salespeople TO Adrian. Привилегии можно перечислять через запятую, например: GRANT SELECT, INSERT, DELETE ON sales TO Joe, Adrian, Thomas {Предоставить пользователям Joe, Adrian и Thomas право на выборку, добавление и удаление данных из таблицы sales}.

Слайд 40





Примеры предоставления привилегий доступа к таблицам
Если необходимо выделить привилегию не на всю таблицу, а лишь на отдельные столбцы, используют следующий синтаксис:
GRANT SELECT (name, address) 
ON sales 
TO Adrian 
{Предоставить пользователю Adrian право на выборку данных из столбцов name, address таблицы sales}.
Описание слайда:
Примеры предоставления привилегий доступа к таблицам Если необходимо выделить привилегию не на всю таблицу, а лишь на отдельные столбцы, используют следующий синтаксис: GRANT SELECT (name, address) ON sales TO Adrian {Предоставить пользователю Adrian право на выборку данных из столбцов name, address таблицы sales}.

Слайд 41





Примеры предоставления привилегий доступа к таблицам
Пользователям могут выделяться разные привилегии к разным столбцам одной таблицы, например:  
GRANT SELECT,
UPDATE (empname, empaddress), 
DELETE (admission) 
ON employee
TO Bill, Maru
{Предоставить пользователям Bill и Maru право на выборку из всей таблицы employee, на изменение столбцов empname и empaddress таблицы employee и на удаление столбца admission (допуск) той же таблицы employee}.
Описание слайда:
Примеры предоставления привилегий доступа к таблицам Пользователям могут выделяться разные привилегии к разным столбцам одной таблицы, например: GRANT SELECT, UPDATE (empname, empaddress), DELETE (admission) ON employee TO Bill, Maru {Предоставить пользователям Bill и Maru право на выборку из всей таблицы employee, на изменение столбцов empname и empaddress таблицы employee и на удаление столбца admission (допуск) той же таблицы employee}.

Слайд 42





Примеры предоставления привилегий доступа к таблицам
Обобщающий аргумент all заменяет в команде GRANT перечень всех возможных привилегий работы с таблицей.
GRANT all
ON salesPeople
TO Diane 
Аргумент PUBLIC имеет аналогичный смысл, но только в отношении пользователей, например:
GRANT SELECT 
ON phonelist
TO PUBLIC
Описание слайда:
Примеры предоставления привилегий доступа к таблицам Обобщающий аргумент all заменяет в команде GRANT перечень всех возможных привилегий работы с таблицей. GRANT all ON salesPeople TO Diane Аргумент PUBLIC имеет аналогичный смысл, но только в отношении пользователей, например: GRANT SELECT ON phonelist TO PUBLIC

Слайд 43





Примеры предоставления привилегий доступа к таблицам
Иногда возникает ситуация, когда пользователя необходимо не только наделить привилегиями, но и дать возможность передавать эти привилегии другим пользователям. В этом случае используют команду
GRANT SELECT 
ON salesPeople 
TO Adrian 
WITH GRANT OPTION
{Пользователю Adrian разрешено передавать привилегию SELECT к таблице продавцов salesPeople третьим лицам}.
Описание слайда:
Примеры предоставления привилегий доступа к таблицам Иногда возникает ситуация, когда пользователя необходимо не только наделить привилегиями, но и дать возможность передавать эти привилегии другим пользователям. В этом случае используют команду GRANT SELECT ON salesPeople TO Adrian WITH GRANT OPTION {Пользователю Adrian разрешено передавать привилегию SELECT к таблице продавцов salesPeople третьим лицам}.

Слайд 44





Примеры предоставления привилегий доступа к таблицам
Теперь  Adrian может ввести, например, команду:
GRANT SELECT 
ON salesPeoples 
TO Stephen
WITH GRANT OPTION
{Пользователю Stephen разрешено передавать привилегию SELECT к таблице продавцов salesPeople третьим лицам}.
Понятно, что такой мощной командой нужно пользоваться очень аккуратно, т.к., например, в рассмотренном выше примере количество пользователей, имеющих доступ к таблице, будет расти в геометрической прогрессии.
Описание слайда:
Примеры предоставления привилегий доступа к таблицам Теперь Adrian может ввести, например, команду: GRANT SELECT ON salesPeoples TO Stephen WITH GRANT OPTION {Пользователю Stephen разрешено передавать привилегию SELECT к таблице продавцов salesPeople третьим лицам}. Понятно, что такой мощной командой нужно пользоваться очень аккуратно, т.к., например, в рассмотренном выше примере количество пользователей, имеющих доступ к таблице, будет расти в геометрической прогрессии.

Слайд 45





Пример лишения привилегий доступа к таблицам
Лишение пользователя привилегий осуществляется командой REVOKE. Ее синтаксис аналогичен синтаксису команды GRANT, но имеет обратный смысл. 
REVOKE INSERT 
ON salesPeople 
FROM Adrian
{Лишить пользователя Adrian права на добавление данных в таблицу продавцов salesPeople}.
Описание слайда:
Пример лишения привилегий доступа к таблицам Лишение пользователя привилегий осуществляется командой REVOKE. Ее синтаксис аналогичен синтаксису команды GRANT, но имеет обратный смысл. REVOKE INSERT ON salesPeople FROM Adrian {Лишить пользователя Adrian права на добавление данных в таблицу продавцов salesPeople}.

Слайд 46





Лишение привилегий доступа к таблицам
Возникает вопрос: кто имеет право отменять привилегии, и что делать в том случае, если пользователь успел передать свои привилегии? 
Это не стандартная ситуация, поэтому нет никаких авторитетных ответов на эти вопросы. 
Наиболее общий подход в такой ситуации следующий: привилегии отменяются пользователем, который их предоставил, и отмена будет каскадироваться, то есть она будет автоматически распространяться на всех пользователям получивших от него эту привилегию.
Описание слайда:
Лишение привилегий доступа к таблицам Возникает вопрос: кто имеет право отменять привилегии, и что делать в том случае, если пользователь успел передать свои привилегии? Это не стандартная ситуация, поэтому нет никаких авторитетных ответов на эти вопросы. Наиболее общий подход в такой ситуации следующий: привилегии отменяются пользователем, который их предоставил, и отмена будет каскадироваться, то есть она будет автоматически распространяться на всех пользователям получивших от него эту привилегию.

Слайд 47





Использование представлений для фильтрации привилегий
Всякий раз, когда пользователю выделяется привилегия к базовой таблице, она автоматически распространяется на все строки, а при использовании возможных исключений UPDATE и REFERENCES, и на все столбцы таблицы. 
Действия привилегий по отношению к базовой таблице можно сделать более точными, используя представления. 
Сначала создается представление, которое ссылается на основную таблицу, а затем уже выделяется привилегия доступа к этому представлению, а не к самой таблице. 
Это значительно улучшает базисные возможности команды GRANT.
Описание слайда:
Использование представлений для фильтрации привилегий Всякий раз, когда пользователю выделяется привилегия к базовой таблице, она автоматически распространяется на все строки, а при использовании возможных исключений UPDATE и REFERENCES, и на все столбцы таблицы. Действия привилегий по отношению к базовой таблице можно сделать более точными, используя представления. Сначала создается представление, которое ссылается на основную таблицу, а затем уже выделяется привилегия доступа к этому представлению, а не к самой таблице. Это значительно улучшает базисные возможности команды GRANT.

Слайд 48





Использование представлений для фильтрации привилегий
Таким образом представления позволяют сделать видимыми для субъектов только определенные столбцы или определенные строки базовых таблиц. 
Сконструировав подходящие представления, администратор БД, по существу, защищает таблицы от несанкционированного доступа и снабжает каждого пользователя своим видением БД, когда недоступные для него объекты как бы не существуют.
Описание слайда:
Использование представлений для фильтрации привилегий Таким образом представления позволяют сделать видимыми для субъектов только определенные столбцы или определенные строки базовых таблиц. Сконструировав подходящие представления, администратор БД, по существу, защищает таблицы от несанкционированного доступа и снабжает каждого пользователя своим видением БД, когда недоступные для него объекты как бы не существуют.

Слайд 49





Предоставление привилегий доступа к представлениям
Пример. Пусть пользователю Thomas необходимо предоставить возможность видеть только столбцы name и address базовой таблицы продавцов salesPeople. 
CREATE VIEW thomasView
AS SELECT name, address 
FROM salesPeople.
Теперь пользователю Thomas выделяется привилегия SELECT к представлению thomasView, а не к самой таблице 
GRANT SELECT 
ON thomasView  
TO Thomas.
Описание слайда:
Предоставление привилегий доступа к представлениям Пример. Пусть пользователю Thomas необходимо предоставить возможность видеть только столбцы name и address базовой таблицы продавцов salesPeople. CREATE VIEW thomasView AS SELECT name, address FROM salesPeople. Теперь пользователю Thomas выделяется привилегия SELECT к представлению thomasView, а не к самой таблице GRANT SELECT ON thomasView TO Thomas.

Слайд 50





Доступ к представлениям с фильтрацией строк
Пользователю Adrian предоставить привилегию UPDATE в таблице заказчиков customers, размещенных в Лондоне:  
CREATE VIEW londoncust 
AS SELECT * 
FROM customers 
WHERE city = 'London' 
WITH CHECK OPTION, 
затем необходимо передать пользователю Adrian привилегию UPDATE к созданному представлению: 
GRANT UPDATE 
ON Londoncust 
TO Adrian.
Описание слайда:
Доступ к представлениям с фильтрацией строк Пользователю Adrian предоставить привилегию UPDATE в таблице заказчиков customers, размещенных в Лондоне: CREATE VIEW londoncust AS SELECT * FROM customers WHERE city = 'London' WITH CHECK OPTION, затем необходимо передать пользователю Adrian привилегию UPDATE к созданному представлению: GRANT UPDATE ON Londoncust TO Adrian.

Слайд 51





Доступ к представлениям с фильтрацией столбцов и строк
Фильтрацию данных в представлении можно распространить  на конкретные столбцы и строки исходной таблицы.
Пусть всем пользователям необходимо предоставить возможность видеть в исходной таблице сотрудников employee только два столбца: фамилию name и отдел dept и только строки, относящиеся к обувному отделу shoe. 
Сначала создаем соответствующее представление:
CREATE VIEW empview AS (условие)
SELECT name, dept
FROM employee
WHERE dept = ‘shoe‘.
Описание слайда:
Доступ к представлениям с фильтрацией столбцов и строк Фильтрацию данных в представлении можно распространить на конкретные столбцы и строки исходной таблицы. Пусть всем пользователям необходимо предоставить возможность видеть в исходной таблице сотрудников employee только два столбца: фамилию name и отдел dept и только строки, относящиеся к обувному отделу shoe. Сначала создаем соответствующее представление: CREATE VIEW empview AS (условие) SELECT name, dept FROM employee WHERE dept = ‘shoe‘.

Слайд 52





Доступ к представлениям с фильтрацией столбцов и строк  
Затем предоставляется всем право на выборку из созданного представления:
GRANT SELECT
ON empview
TO PUBLIC.
Если при доступе к представлению empview, пытаться запросить сведения, относящиеся к отделу игрушек toy:
SELECT *
FROM empview 
WHERE dept = ‘toy‘,
      то ответ будет из нуля строк, а не код ответа.
Описание слайда:
Доступ к представлениям с фильтрацией столбцов и строк Затем предоставляется всем право на выборку из созданного представления: GRANT SELECT ON empview TO PUBLIC. Если при доступе к представлению empview, пытаться запросить сведения, относящиеся к отделу игрушек toy: SELECT * FROM empview WHERE dept = ‘toy‘, то ответ будет из нуля строк, а не код ответа.

Слайд 53





Привилегии пользователя при создании представления
При создании представления пользователь должен иметь привилегию SELECT ко всем базовым таблицам, на которые имеются ссылки в создаваемом представлении. 
Если представление – модифицируемое, то пользователь должен иметь привилегии INSERT, UPDATE, и DELETE к базовым таблицам, причем эти привилегии будут автоматически передаваться и к представлению. 
Если пользователь не имеет привилегий на модификацию в базовых таблицах, то он не сможет получить их и в представлениях, которые он создал, даже если сами эти представления – модифицируемые. 
Привилегия REFERENCES при создании представлений никогда не используется.
Описание слайда:
Привилегии пользователя при создании представления При создании представления пользователь должен иметь привилегию SELECT ко всем базовым таблицам, на которые имеются ссылки в создаваемом представлении. Если представление – модифицируемое, то пользователь должен иметь привилегии INSERT, UPDATE, и DELETE к базовым таблицам, причем эти привилегии будут автоматически передаваться и к представлению. Если пользователь не имеет привилегий на модификацию в базовых таблицах, то он не сможет получить их и в представлениях, которые он создал, даже если сами эти представления – модифицируемые. Привилегия REFERENCES при создании представлений никогда не используется.

Слайд 54





Представления с агрегатными функциями
Другая возможность состоит в том, чтобы предлагать пользователям доступ к уже извлеченным данным,           а не к фактическим значениям в исходной таблице. 
Реализовать эту возможность позволяют агрегатные функции. 
С помощью агрегатных функций можно создавать представление, которое реализует: 
счет COUNT, 
среднее значение AVG, 
общее количество SUM,
и др.
Описание слайда:
Представления с агрегатными функциями Другая возможность состоит в том, чтобы предлагать пользователям доступ к уже извлеченным данным, а не к фактическим значениям в исходной таблице. Реализовать эту возможность позволяют агрегатные функции. С помощью агрегатных функций можно создавать представление, которое реализует: счет COUNT, среднее значение AVG, общее количество SUM, и др.

Слайд 55





Представления с агрегатными функциями
Пример.
CREATE VIEW datetotals 
AS SELECT odate, COUNT (*), SUM (amt), AVG (amt) 
FROM Orders 
GROUP BY odate. 
Теперь можно передать пользователю Diane привилегию SELECT в представлении datetotals:  
GRANT SELECT 
ON datetotals 
TO Diane.
Описание слайда:
Представления с агрегатными функциями Пример. CREATE VIEW datetotals AS SELECT odate, COUNT (*), SUM (amt), AVG (amt) FROM Orders GROUP BY odate. Теперь можно передать пользователю Diane привилегию SELECT в представлении datetotals: GRANT SELECT ON datetotals TO Diane.

Слайд 56





Привилегии доступа к процедурам
По отношению к процедуре можно предоставить лишь право на ее выполнение. При этом не нужно заботиться о выделении прав доступа к объектам, обрабатываемым процедурой – их наличие не обязательно. 
Таким образом процедуры БД являются удобным средством предоставления контролируемого доступа для выполнения строго определенных действий с данными.
Пример предоставления права выполнения (EXECUTE) процедуры integ check всем пользователям: 
GRANT  EXECUTE
ON PROCEDURE integ_check
TO PUBLIC.
Описание слайда:
Привилегии доступа к процедурам По отношению к процедуре можно предоставить лишь право на ее выполнение. При этом не нужно заботиться о выделении прав доступа к объектам, обрабатываемым процедурой – их наличие не обязательно. Таким образом процедуры БД являются удобным средством предоставления контролируемого доступа для выполнения строго определенных действий с данными. Пример предоставления права выполнения (EXECUTE) процедуры integ check всем пользователям: GRANT EXECUTE ON PROCEDURE integ_check TO PUBLIC.

Слайд 57





Привилегии доступа к процедурам
По умолчанию все пользователи имеют право создавать процедуры в БД. Если бы они при этом автоматически получали права на их выполнение, то смогли бы осуществить, по существу, любую операцию с данными, поскольку выполнение процедуры не требует прав доступа к обрабатываемым объектам. 
Для исключения этой возможности предоставление права на выполнение процедуры, возможна только администратором БД. 
Видно, насколько осторожно нужно относиться к предоставлению привилегий выполнения по отношению к новым, непроверенным процедурам.
Описание слайда:
Привилегии доступа к процедурам По умолчанию все пользователи имеют право создавать процедуры в БД. Если бы они при этом автоматически получали права на их выполнение, то смогли бы осуществить, по существу, любую операцию с данными, поскольку выполнение процедуры не требует прав доступа к обрабатываемым объектам. Для исключения этой возможности предоставление права на выполнение процедуры, возможна только администратором БД. Видно, насколько осторожно нужно относиться к предоставлению привилегий выполнения по отношению к новым, непроверенным процедурам.

Слайд 58





Права доступа  к БД
Права доступа к БД как к единому целому может предоставлять только администратор  БД или администратор сервера БД. Эти «права» на самом деле устанавливают ряд ограничений на использование БД, т.е. по сути, являются запретительными.
Так, в СУБД  INGRES в правах доступа к БД используются следующие виды  ограничений:
QUERY_IO_LIMIT – предполагаемое максимальное число операций ввода/вывода на один запрос; 
QUERY_ROW_LIMIT – предполагаемое максимальное число строк, возвращаемых одним запросом;
Описание слайда:
Права доступа к БД Права доступа к БД как к единому целому может предоставлять только администратор БД или администратор сервера БД. Эти «права» на самом деле устанавливают ряд ограничений на использование БД, т.е. по сути, являются запретительными. Так, в СУБД INGRES в правах доступа к БД используются следующие виды ограничений: QUERY_IO_LIMIT – предполагаемое максимальное число операций ввода/вывода на один запрос; QUERY_ROW_LIMIT – предполагаемое максимальное число строк, возвращаемых одним запросом;

Слайд 59





Права доступа  к БД
ограничение на использование ресурсов процессора;
ограничение на число запрашиваемых страниц;
управление доступом к БД;
управление созданием таблиц;
управление созданием  процедур; 
управление использованием опции u (подключение от имени другого пользователя).
По умолчанию в правах пользователя нет этих ограничений. 
Привилегии QUERY_IO_LIMIT и QUERY_ROW_LIMIT пользователей проверяются на основании оценок, выдаваемых оптимизатором запросов .
Описание слайда:
Права доступа к БД ограничение на использование ресурсов процессора; ограничение на число запрашиваемых страниц; управление доступом к БД; управление созданием таблиц; управление созданием процедур; управление использованием опции u (подключение от имени другого пользователя). По умолчанию в правах пользователя нет этих ограничений. Привилегии QUERY_IO_LIMIT и QUERY_ROW_LIMIT пользователей проверяются на основании оценок, выдаваемых оптимизатором запросов .

Слайд 60





Примеры операторов доступа к БД
Примеры операторов управления доступом к БД, как к единому целому:
GRANT NOCREATE_TABLE, NOCREATE_PROCEDURE
ON DATABASE new_accts
TO GROUP clerks;
{Запретить членам группы clerks создавать таблицы и процедуры в базе данных new_accts};
GRANT QUERY_ROW_LIMIT 250
ON DATABASE customers
TO Mary.
{Разрешить пользователю Mary получать в БД клиентов customers не более 250 строк на один запрос}
Описание слайда:
Примеры операторов доступа к БД Примеры операторов управления доступом к БД, как к единому целому: GRANT NOCREATE_TABLE, NOCREATE_PROCEDURE ON DATABASE new_accts TO GROUP clerks; {Запретить членам группы clerks создавать таблицы и процедуры в базе данных new_accts}; GRANT QUERY_ROW_LIMIT 250 ON DATABASE customers TO Mary. {Разрешить пользователю Mary получать в БД клиентов customers не более 250 строк на один запрос}

Слайд 61





Права доступа  к серверу БД
Права доступа к серверу БД распространяются на все БД, обслуживаемые данным сервером. Набор этих прав тот же, что и для отдельных БД. 
Пример оператора, предоставляющего обладателям роли creators право на создание таблиц во всех БД:
GRANT CREATЕ ТАВLЕ
ON CURRENT INSTALLATION
TU ROLE creators;
Привилегии, явно определенные для отдельных БД, имеют приоритет над привилегиями сервера.
Описание слайда:
Права доступа к серверу БД Права доступа к серверу БД распространяются на все БД, обслуживаемые данным сервером. Набор этих прав тот же, что и для отдельных БД. Пример оператора, предоставляющего обладателям роли creators право на создание таблиц во всех БД: GRANT CREATЕ ТАВLЕ ON CURRENT INSTALLATION TU ROLE creators; Привилегии, явно определенные для отдельных БД, имеют приоритет над привилегиями сервера.

Слайд 62





Отмена привилегий доступа
Для отмены привилегий, выданных ранее (как разрешительных, так и запретительных), служит оператор REVOKE. Синтаксически он аналогичен оператору GRANT с заменой слова ТО на FRОМ. 
Пример:
REVOKE QUERY ROW LIMIT
ON DATABASE emplоуее
FRОМ ROLE review emp. 
Приведенный оператор отменяет ограничение на число результирующих строк в одном запросе, если ранее оно было наложено на роль review emp.
Описание слайда:
Отмена привилегий доступа Для отмены привилегий, выданных ранее (как разрешительных, так и запретительных), служит оператор REVOKE. Синтаксически он аналогичен оператору GRANT с заменой слова ТО на FRОМ. Пример: REVOKE QUERY ROW LIMIT ON DATABASE emplоуее FRОМ ROLE review emp. Приведенный оператор отменяет ограничение на число результирующих строк в одном запросе, если ранее оно было наложено на роль review emp.

Слайд 63





Иерархия прав доступа
Иерархия различных прав доступа задается, обычно, производителем СУБД. Так, в СУБД  INGRES средства управления доступом позволяют реализовать следующие ограничения доступа:
операционные ограничения (за счет прав доступа INSERT, UРDАТЕ, DELETE);
ограничения по значениям (за счет механизма представлений);
ограничения на ресурсы (за счет привилегий доступа к БД).
Последний вид ограничений во многих СУБД, в частности, в СУБД ЛИНТЕР отсутствует, вследствие отсутствия доступа к БД в целом.
Описание слайда:
Иерархия прав доступа Иерархия различных прав доступа задается, обычно, производителем СУБД. Так, в СУБД INGRES средства управления доступом позволяют реализовать следующие ограничения доступа: операционные ограничения (за счет прав доступа INSERT, UРDАТЕ, DELETE); ограничения по значениям (за счет механизма представлений); ограничения на ресурсы (за счет привилегий доступа к БД). Последний вид ограничений во многих СУБД, в частности, в СУБД ЛИНТЕР отсутствует, вследствие отсутствия доступа к БД в целом.

Слайд 64





Иерархия прав доступа
При обработке запроса СУБД сначала проверяет операционные ограничения. Если они оказываются нарушенными, запрос отвергается с выдачей соответствующей диагностики. Нарушение ограничений на значения влияет только на количество возвращаемых результирующих строк. Никакой диагностики при этом не выдается. После учета двух предыдущих ограничений, запрос поступает на обработку оптимизатору запросов для проверки ограничений на ресурсы. Если тот обнаружит превышение этих ограничений, запрос будет отвергнут с выдачей соответствующей диагностики.
Описание слайда:
Иерархия прав доступа При обработке запроса СУБД сначала проверяет операционные ограничения. Если они оказываются нарушенными, запрос отвергается с выдачей соответствующей диагностики. Нарушение ограничений на значения влияет только на количество возвращаемых результирующих строк. Никакой диагностики при этом не выдается. После учета двух предыдущих ограничений, запрос поступает на обработку оптимизатору запросов для проверки ограничений на ресурсы. Если тот обнаружит превышение этих ограничений, запрос будет отвергнут с выдачей соответствующей диагностики.

Слайд 65





Иерархия прав доступа
В соответствии с принятой в СУБД системой привилегий каждый пользователь помимо собственных, имеет привилегии PUBLIC, может входить в различные группы и запускать приложения с определенными ролями. Возникает вопрос: как соотносятся между собой права, предоставленные различным именованным носителям привилегий? 
В СУБД INGRES иерархия авторизации привилегий выглядит следующим образом:
роль (высший приоритет);
пользователь;
группа;
PUBLIC (низший приоритет).
Описание слайда:
Иерархия прав доступа В соответствии с принятой в СУБД системой привилегий каждый пользователь помимо собственных, имеет привилегии PUBLIC, может входить в различные группы и запускать приложения с определенными ролями. Возникает вопрос: как соотносятся между собой права, предоставленные различным именованным носителям привилегий? В СУБД INGRES иерархия авторизации привилегий выглядит следующим образом: роль (высший приоритет); пользователь; группа; PUBLIC (низший приоритет).

Слайд 66





Иерархия прав доступа
Для каждого объекта, к которому осуществляется доступ, СУБД пытается отыскать в иерархии привилегию, относящуюся к запрашиваемому  виду доступа; (SELECT, ЕXЕСUТE и т.п.). 
Например, при попытке доступа к таблице с целью обновления (UPDATE), СУБД последовательно проверяет привилегии роли, пользователя, группы и всех пользователей (PUBLIC). Если хотя бы на одном уровне иерархии привилегия UPDATE имеется, запрос передается для дальнейшей обработки. В противном случае используется подразумеваемое право, доступа, которое предписывает отвергнуть запрос.
Описание слайда:
Иерархия прав доступа Для каждого объекта, к которому осуществляется доступ, СУБД пытается отыскать в иерархии привилегию, относящуюся к запрашиваемому виду доступа; (SELECT, ЕXЕСUТE и т.п.). Например, при попытке доступа к таблице с целью обновления (UPDATE), СУБД последовательно проверяет привилегии роли, пользователя, группы и всех пользователей (PUBLIC). Если хотя бы на одном уровне иерархии привилегия UPDATE имеется, запрос передается для дальнейшей обработки. В противном случае используется подразумеваемое право, доступа, которое предписывает отвергнуть запрос.

Слайд 67





Трактовка ограничений на ресурсы 
Пример для СУБД INGRES.  Пусть на 4-х уровнях иерархии прописаны свои ограничения на число результирующих строк запроса (привилегия QUERY_ROW_LIMIT):
роль – 1700;
пользователь – 1500;
группа – 2000;
PUBLIC – 1000.
   Если пользователь в начале сеанса задал и роль, и группу, будет использовано ограничение по роли. Если бы привилегия для роли отсутствовала или роль не была бы задана, он смог бы получать 1500 строк и т.д. Если бы привилегия QUERY ROW LIMIT вообще не была бы специфицирована, СУБД по умолчанию вообще не наложила бы ограничений на число строк.
Описание слайда:
Трактовка ограничений на ресурсы Пример для СУБД INGRES. Пусть на 4-х уровнях иерархии прописаны свои ограничения на число результирующих строк запроса (привилегия QUERY_ROW_LIMIT): роль – 1700; пользователь – 1500; группа – 2000; PUBLIC – 1000. Если пользователь в начале сеанса задал и роль, и группу, будет использовано ограничение по роли. Если бы привилегия для роли отсутствовала или роль не была бы задана, он смог бы получать 1500 строк и т.д. Если бы привилегия QUERY ROW LIMIT вообще не была бы специфицирована, СУБД по умолчанию вообще не наложила бы ограничений на число строк.

Слайд 68





Информация о привилегиях
Важно не только давать и отбирать привилегии, но и иметь информацию о том, какими правами доступа обладает каждый из субъектов. Такая информация в том или ином виде хранится в специальной служебной БД СУБД. Так, в СУБД INGRES подобные данные хранятся в таблицах специальной БД iidbdb. 
Необходимую информацию о правах доступа, относящихся к текущему подключению можно получить с помощью функции dbmsinfo, а также путем анализа содержимого БД iidbdb. Можно узнать имена действующих группы и роли, значения количественных ограничений, наличие привилегий для создания таблиц и процедур и т.п.
Описание слайда:
Информация о привилегиях Важно не только давать и отбирать привилегии, но и иметь информацию о том, какими правами доступа обладает каждый из субъектов. Такая информация в том или ином виде хранится в специальной служебной БД СУБД. Так, в СУБД INGRES подобные данные хранятся в таблицах специальной БД iidbdb. Необходимую информацию о правах доступа, относящихся к текущему подключению можно получить с помощью функции dbmsinfo, а также путем анализа содержимого БД iidbdb. Можно узнать имена действующих группы и роли, значения количественных ограничений, наличие привилегий для создания таблиц и процедур и т.п.

Слайд 69





Информация о привилегиях
Другие таблицы iiusergroup, iirole и iidbprivileges БД iidbdb содержат, соответственно, список групп и их состав, перечень pолей вместе с зашифрованными паролями и сведения о привилегиях доступа к БД. 
Так, таблица iiusergroup состоит из трех столбцов:
• groupid – имя группы;
• groupmem – имя члена группы;
• reserve – резервный столбец.
Средствами SQL из этих таблиц можно извлечь всю необходимую информацию.
Описание слайда:
Информация о привилегиях Другие таблицы iiusergroup, iirole и iidbprivileges БД iidbdb содержат, соответственно, список групп и их состав, перечень pолей вместе с зашифрованными паролями и сведения о привилегиях доступа к БД. Так, таблица iiusergroup состоит из трех столбцов: • groupid – имя группы; • groupmem – имя члена группы; • reserve – резервный столбец. Средствами SQL из этих таблиц можно извлечь всю необходимую информацию.

Слайд 70





Соотношение прав доступа СУБД и ОС
Данные, обрабатываемые средствами СУБД, располагаются в файлах и/или логических томах ОС. Соответственно, и доступ к этим данным возможен как с помощью СУБД, так и посредством утилит ОС. Это создает угрозу несанкционированного вмешательства в БД через утилиты ОС. 
Чтобы средствами ОС нельзя было скомпрометировать БД и сопутствующую информацию, например журналы транзакций, должен быть установлен максимально жесткий режим доступа к соответствующим файлам и томам.
Описание слайда:
Соотношение прав доступа СУБД и ОС Данные, обрабатываемые средствами СУБД, располагаются в файлах и/или логических томах ОС. Соответственно, и доступ к этим данным возможен как с помощью СУБД, так и посредством утилит ОС. Это создает угрозу несанкционированного вмешательства в БД через утилиты ОС. Чтобы средствами ОС нельзя было скомпрометировать БД и сопутствующую информацию, например журналы транзакций, должен быть установлен максимально жесткий режим доступа к соответствующим файлам и томам.

Слайд 71





Соотношение прав доступа СУБД и ОС
Данные из БД могут экспортироваться в файлы ОС или другие хранилища. Возможен и обратный процесс импорта данных. Необходимо следить за тем, чтобы подобные операции не понижали уровень защищенности системы. 
Сделать это не просто. Во-первых, ОС может не обеспечивать должной защиты. Во-вторых, даже для развитых ОС необходимо соответствие между механизмами защиты СУБД и ОС. При большом числе пользователей данная задача становится очень сложной. Поэтому практичное решение сводится к административному контролю за экспортом/импортом информации.
Описание слайда:
Соотношение прав доступа СУБД и ОС Данные из БД могут экспортироваться в файлы ОС или другие хранилища. Возможен и обратный процесс импорта данных. Необходимо следить за тем, чтобы подобные операции не понижали уровень защищенности системы. Сделать это не просто. Во-первых, ОС может не обеспечивать должной защиты. Во-вторых, даже для развитых ОС необходимо соответствие между механизмами защиты СУБД и ОС. При большом числе пользователей данная задача становится очень сложной. Поэтому практичное решение сводится к административному контролю за экспортом/импортом информации.

Слайд 72





Соотношение прав доступа СУБД и ОС
Исходные тексты сложных процедур БД, также могут храниться в файлах ОС, и потенциально возможно их нелегальное изменение, способное привести к нарушениям ИБ. 
СУБД и ОС предлагают во многом сходные средства защиты данных. Более того, многие СУБД просто полагаются на ОС. Но даже для таких «дружественных» сервисов проведение согласованной политики безопасности является достаточно сложным делом. 
Поэтому на практике приходится всячески ограничивать информационный обмен между СУБД и ОС.
Описание слайда:
Соотношение прав доступа СУБД и ОС Исходные тексты сложных процедур БД, также могут храниться в файлах ОС, и потенциально возможно их нелегальное изменение, способное привести к нарушениям ИБ. СУБД и ОС предлагают во многом сходные средства защиты данных. Более того, многие СУБД просто полагаются на ОС. Но даже для таких «дружественных» сервисов проведение согласованной политики безопасности является достаточно сложным делом. Поэтому на практике приходится всячески ограничивать информационный обмен между СУБД и ОС.

Слайд 73





Мандатная защита в СУБД
Современные АИС обеспечивают также принудительный контроль доступа (mandatory access control). Он основан на отказе от понятия владельца данных и опирается на, так называемые, метки безопасности (security labels), которые присваиваются данным при их создании и служат для классификации данных по уровням конфиденциальности. 
Метки содержатся также и на официальных разрешениях (допусках) пользователей для обращения к данным соответствующего уровня конфиденциальности.
При мандатной защите конкретный пользователь может оперировать только с данными, расположенными на уровне конфиденциальности, который соответствует его статусу.
Описание слайда:
Мандатная защита в СУБД Современные АИС обеспечивают также принудительный контроль доступа (mandatory access control). Он основан на отказе от понятия владельца данных и опирается на, так называемые, метки безопасности (security labels), которые присваиваются данным при их создании и служат для классификации данных по уровням конфиденциальности. Метки содержатся также и на официальных разрешениях (допусках) пользователей для обращения к данным соответствующего уровня конфиденциальности. При мандатной защите конкретный пользователь может оперировать только с данными, расположенными на уровне конфиденциальности, который соответствует его статусу.

Слайд 74





Метки безопасности 
Мандатная защита, позволяет связать метки безопасности с каждой строкой любой таблицы в БД. Любой пользователь может потребовать в своем запросе отобразить любую таблицу из БД, однако увидит он только те строки, метки безопасности которых не превышают его статус. 
СУБД проверяет статус пользователя и, в ответ на его запрос, возвращает только те строки таблицы, которые удовлетворяют запросу и соответствуют этому статусу.
Метки безопасности неизменны на всем протяжении существования объекта защиты, уничтожаются только вместе с ним и территориально (на диске) располагаются тоже вместе с ним, а не в системном каталоге, как это происходит при логической защите.
Описание слайда:
Метки безопасности Мандатная защита, позволяет связать метки безопасности с каждой строкой любой таблицы в БД. Любой пользователь может потребовать в своем запросе отобразить любую таблицу из БД, однако увидит он только те строки, метки безопасности которых не превышают его статус. СУБД проверяет статус пользователя и, в ответ на его запрос, возвращает только те строки таблицы, которые удовлетворяют запросу и соответствуют этому статусу. Метки безопасности неизменны на всем протяжении существования объекта защиты, уничтожаются только вместе с ним и территориально (на диске) располагаются тоже вместе с ним, а не в системном каталоге, как это происходит при логической защите.

Слайд 75





Метки безопасности 
Средства мандатной защиты предоставляются специальными (trusted) версиями СУБД, которые не позволяют игнорировать метки безопасности при получении доступа к информации. 
Такие реализации СУБД, как правило, представляют собой комплекс средств как на машине-сервере, так и на машине-клиенте, при этом возможно использование специальной защищенной версии ОС. Кроме разграничения доступа к информации посредством меток конфиденциальности, защищенные СУБД предоставляют средства слежения за доступом субъектов к объектам защиты (аудит).
Описание слайда:
Метки безопасности Средства мандатной защиты предоставляются специальными (trusted) версиями СУБД, которые не позволяют игнорировать метки безопасности при получении доступа к информации. Такие реализации СУБД, как правило, представляют собой комплекс средств как на машине-сервере, так и на машине-клиенте, при этом возможно использование специальной защищенной версии ОС. Кроме разграничения доступа к информации посредством меток конфиденциальности, защищенные СУБД предоставляют средства слежения за доступом субъектов к объектам защиты (аудит).

Слайд 76





Метки безопасности 
Использование СУБД с возможностями мандатной защиты позволяет разграничить доступ собственно к данным, хранящимся в информационной системе, от доступа к именованным объектам данных. 
Существуют реализации, позволяющие разграничивать доступ вплоть до конкретного значения конкретного атрибута в конкретной строке конкретной таблицы. 
Обычно сама метка представляет собой целый набор значений, отражающих, например, уровень защищенности устройства, на котором хранится таблица, уровень защищенности самой таблицы, уровень защищенности атрибута и уровень защищенности кортежа.
Описание слайда:
Метки безопасности Использование СУБД с возможностями мандатной защиты позволяет разграничить доступ собственно к данным, хранящимся в информационной системе, от доступа к именованным объектам данных. Существуют реализации, позволяющие разграничивать доступ вплоть до конкретного значения конкретного атрибута в конкретной строке конкретной таблицы. Обычно сама метка представляет собой целый набор значений, отражающих, например, уровень защищенности устройства, на котором хранится таблица, уровень защищенности самой таблицы, уровень защищенности атрибута и уровень защищенности кортежа.

Слайд 77





СУБД INGRES/Еnhanced Security 
Механизм меток безопасности был впервые реализован в версии СУБД INGRES/Еnhanced Security (INGRES с повышенной безопасностью).
В этой СУБД к каждой реляционной таблице неявно добавляется столбец, содержащий метки безопасности строк таблицы. Каждая метка состоит из трех компонентов:
уровень секретности;
категория;
область. 
Компонент «уровень секретности» зависит от приложения.
 Например, для военных ведомств США это 4 уровня секретности от «совершенно секретно» до «несекретно».
Описание слайда:
СУБД INGRES/Еnhanced Security Механизм меток безопасности был впервые реализован в версии СУБД INGRES/Еnhanced Security (INGRES с повышенной безопасностью). В этой СУБД к каждой реляционной таблице неявно добавляется столбец, содержащий метки безопасности строк таблицы. Каждая метка состоит из трех компонентов: уровень секретности; категория; область. Компонент «уровень секретности» зависит от приложения. Например, для военных ведомств США это 4 уровня секретности от «совершенно секретно» до «несекретно».

Слайд 78





СУБД INGRES/Еnhanced Security 
Понятие «категория» позволяет разделить данные на тематические отсеки. В коммерческих приложениях категориями могут быть «финансы», «кадры», «материальные ценности» и т.п. В военной сфере категориями могут быть рода войск, типы вооружений и военной техники и т.п.
Компонент «область» является еще одним средством деления информации на отсеки. Он может действительно иметь географический смысл (например, страна, регион). В коммерческих приложениях «область» может обозначать тип местности (городская, сельская), городские районы, филиалы, торговые точки и т.п. В военных приложениях – это - военные округа, места дислокации частей и т.п.
Описание слайда:
СУБД INGRES/Еnhanced Security Понятие «категория» позволяет разделить данные на тематические отсеки. В коммерческих приложениях категориями могут быть «финансы», «кадры», «материальные ценности» и т.п. В военной сфере категориями могут быть рода войск, типы вооружений и военной техники и т.п. Компонент «область» является еще одним средством деления информации на отсеки. Он может действительно иметь географический смысл (например, страна, регион). В коммерческих приложениях «область» может обозначать тип местности (городская, сельская), городские районы, филиалы, торговые точки и т.п. В военных приложениях – это - военные округа, места дислокации частей и т.п.

Слайд 79





СУБД INGRES/Еnhanced Security 
Каждый пользователь INGRES/Enhanced Security имеет статус, определяемый присвоенной ему меткой безопасности пользователя (МБП). Он может получить доступ к данным с меткой безопасности данных (МБД), если одновременно удовлетворяются следующие 3 условия:
уровень секретности  в МБП должен быть не ниже уровня секретности в МБД;
набор категорий, заданных в МБД, должен целиком содержаться в МБП;
набор областей, заданных в МБП, должен целиком содержаться в МБД.
Описание слайда:
СУБД INGRES/Еnhanced Security Каждый пользователь INGRES/Enhanced Security имеет статус, определяемый присвоенной ему меткой безопасности пользователя (МБП). Он может получить доступ к данным с меткой безопасности данных (МБД), если одновременно удовлетворяются следующие 3 условия: уровень секретности в МБП должен быть не ниже уровня секретности в МБД; набор категорий, заданных в МБД, должен целиком содержаться в МБП; набор областей, заданных в МБП, должен целиком содержаться в МБД.

Слайд 80





СУБД INGRES/Еnhanced Security
Описание слайда:
СУБД INGRES/Еnhanced Security

Слайд 81





СУБД INGRES/Еnhanced Security
Описание слайда:
СУБД INGRES/Еnhanced Security

Слайд 82





СУБД INGRES/Еnhanced Security 
Для совместимости с обычными версиями СУБД, столбец с метками безопасности не показывается.
Механизм меток безопасности не отменяет, а дополняет произвольное управление доступом. Пользователи по-прежнему могут оперировать данными в рамках своих привилегий, но даже при наличии привилегии SЕLECT им будет доступна только часть данных.
При добавлении или изменении строк они наследуют МБП, инициировавшего операцию. Таким образом, даже если авторизованный пользователь перепишет секретную информацию в общедоступную таблицу, менее благонадежные пользователи не смогут ее прочитать.
Описание слайда:
СУБД INGRES/Еnhanced Security Для совместимости с обычными версиями СУБД, столбец с метками безопасности не показывается. Механизм меток безопасности не отменяет, а дополняет произвольное управление доступом. Пользователи по-прежнему могут оперировать данными в рамках своих привилегий, но даже при наличии привилегии SЕLECT им будет доступна только часть данных. При добавлении или изменении строк они наследуют МБП, инициировавшего операцию. Таким образом, даже если авторизованный пользователь перепишет секретную информацию в общедоступную таблицу, менее благонадежные пользователи не смогут ее прочитать.

Слайд 83





СУБД INGRES/Еnhanced Security 
Специальная привилегия DOWNGRADE позволяет изменять метки безопасности, ассоциированные с данными. Это необходимо для коррекции меток, по тем или иным причинам оказавшихся неправильными.
СУБД INCRES/Еnhancеd Security допускает не только скрытое, но и явное включение меток безопасности в реляционные таблицы. Появился новый тип данных, security label, поддерживающий соответствующие операции сравнения.
INCRES/Еnhancеd Security – первая СУБД, получившая сертификат по классу безопасности В1. В настоящее время появились и другие СУБД с мандатной защитой.
Описание слайда:
СУБД INGRES/Еnhanced Security Специальная привилегия DOWNGRADE позволяет изменять метки безопасности, ассоциированные с данными. Это необходимо для коррекции меток, по тем или иным причинам оказавшихся неправильными. СУБД INCRES/Еnhancеd Security допускает не только скрытое, но и явное включение меток безопасности в реляционные таблицы. Появился новый тип данных, security label, поддерживающий соответствующие операции сравнения. INCRES/Еnhancеd Security – первая СУБД, получившая сертификат по классу безопасности В1. В настоящее время появились и другие СУБД с мандатной защитой.

Слайд 84





СУБД «Линтер»
Отечественным примером является СУБД с меточной безопасностью является СУБД «Линтер», которая получила признание в  силовых структурах, как единственная СУБД, имеющая сертификат по второму классу защиты от НСД, что соответствует классу B3 оранжевой книги. 
Мандатная защита ЛИНТЕР также опирается на механизм меток безопасности, однако, по сравнению с СУБД INCRES/Еnhancеd Security ЛИНТЕР имеет свои специфические особенности, которые позволяют существенно более строго реализовать контроль управления доступом к конфиденциальным данным.
Описание слайда:
СУБД «Линтер» Отечественным примером является СУБД с меточной безопасностью является СУБД «Линтер», которая получила признание в силовых структурах, как единственная СУБД, имеющая сертификат по второму классу защиты от НСД, что соответствует классу B3 оранжевой книги. Мандатная защита ЛИНТЕР также опирается на механизм меток безопасности, однако, по сравнению с СУБД INCRES/Еnhancеd Security ЛИНТЕР имеет свои специфические особенности, которые позволяют существенно более строго реализовать контроль управления доступом к конфиденциальным данным.

Слайд 85





СУБД «Линтер»
В СУБД «Линтер» все перечисленные объекты (независимо от их иерархии в БД) разбиваются на группы принадлежности. 
Объект может принадлежать только одной из групп (это может быть, например, разбиение по отделам организации). 
Группы принадлежности напрямую связаны с группами субъектов. Субъект вправе видеть только данные своей группы, если между группами субъектов не установлены отношения доверия.
Описание слайда:
СУБД «Линтер» В СУБД «Линтер» все перечисленные объекты (независимо от их иерархии в БД) разбиваются на группы принадлежности. Объект может принадлежать только одной из групп (это может быть, например, разбиение по отделам организации). Группы принадлежности напрямую связаны с группами субъектов. Субъект вправе видеть только данные своей группы, если между группами субъектов не установлены отношения доверия.

Слайд 86





СУБД «Линтер»
В СУБД «Линтер» все объекты выстроены в иерархию по уровням конфиденциальности и по уровням ценности или важности. 
Уровень конфиденциальности разбивает объекты по доступности на чтение. Пользователь с более низким уровнем доступа не будет знать даже о существовании объектов с более высоким уровнем конфиденциальности. 
Уровень ценности, напротив, разбивает данные (объекты) по важности, ограничивая возможность их удаления и модификации.
Описание слайда:
СУБД «Линтер» В СУБД «Линтер» все объекты выстроены в иерархию по уровням конфиденциальности и по уровням ценности или важности. Уровень конфиденциальности разбивает объекты по доступности на чтение. Пользователь с более низким уровнем доступа не будет знать даже о существовании объектов с более высоким уровнем конфиденциальности. Уровень ценности, напротив, разбивает данные (объекты) по важности, ограничивая возможность их удаления и модификации.

Слайд 87





СУБД «Линтер»
Метка объекта включает:
•	группу субъекта, который внес данный объект;
•	уровень доступа на чтение – RAL (Read Access Level);
•	уровень доступа на запись – WAL (Write Access Level).
Метка субъекта выглядит аналогично:
•	группу, к которой принадлежит субъект;
•	RAL-уровень субъекта, который представляет собой максимальный RAL-уровень доступной субъекту;
•	WAL-уровень субъекта, то есть минимальный RAL-уровень объекта, который может быть создан этим субъектом.
Описание слайда:
СУБД «Линтер» Метка объекта включает: • группу субъекта, который внес данный объект; • уровень доступа на чтение – RAL (Read Access Level); • уровень доступа на запись – WAL (Write Access Level). Метка субъекта выглядит аналогично: • группу, к которой принадлежит субъект; • RAL-уровень субъекта, который представляет собой максимальный RAL-уровень доступной субъекту; • WAL-уровень субъекта, то есть минимальный RAL-уровень объекта, который может быть создан этим субъектом.

Слайд 88





СУБД «Линтер»
Все пользователи БД считаются разбитыми на непересекающиеся группы. Группа описывает область доступных пользователю данных. Для каждой группы существует админ группы (DBA), созданный админом системы. При этом пользователи одной группы не видят данных, принадлежащих пользователям другой группы. 
В системе реализовано понятие «уровень доверия между группами». Уровни доверия не могут быть вложенными. Группа представляет собой число в диапазоне [1-250]. Группа 0 – группа админ системы. Только он может создать пользователя в группе, отличной от своей. Все данные, созданные от имени пользователя, помечаются его группой.
Описание слайда:
СУБД «Линтер» Все пользователи БД считаются разбитыми на непересекающиеся группы. Группа описывает область доступных пользователю данных. Для каждой группы существует админ группы (DBA), созданный админом системы. При этом пользователи одной группы не видят данных, принадлежащих пользователям другой группы. В системе реализовано понятие «уровень доверия между группами». Уровни доверия не могут быть вложенными. Группа представляет собой число в диапазоне [1-250]. Группа 0 – группа админ системы. Только он может создать пользователя в группе, отличной от своей. Все данные, созданные от имени пользователя, помечаются его группой.

Слайд 89





СУБД «Линтер»
Уровни доступа вводятся для проверки прав на осуществление чтения-записи информации. 
Вводятся следующие уровни доступа:
1.	Для пользователя (субъекта):
RAL – уровень доступа; пользователь может получать (читать) информацию, RAL-уровень которой не выше его собственного уровня доступа;
WAL – уровень доверия на понижение уровня конфиденциальности; пользователь не может вносить информацию с уровнем доступа (RAL-уровнем) более низким, чем данный WAL-уровень пользователя.
Описание слайда:
СУБД «Линтер» Уровни доступа вводятся для проверки прав на осуществление чтения-записи информации. Вводятся следующие уровни доступа: 1. Для пользователя (субъекта): RAL – уровень доступа; пользователь может получать (читать) информацию, RAL-уровень которой не выше его собственного уровня доступа; WAL – уровень доверия на понижение уровня конфиденциальности; пользователь не может вносить информацию с уровнем доступа (RAL-уровнем) более низким, чем данный WAL-уровень пользователя.

Слайд 90





СУБД «Линтер»
2.	Для информации:
RAL – уровень чтения; пользователь может получать (читать) информацию, RAL-уровень которой не выше его собственного RAL-уровня (может читать менее конфиденциальные данные);
WAL – уровень ценности или уровень доступа на запись (модификацию, удаление); пользователь может модифицировать (удалять) информацию, WAL-уровень которой не выше его RAL-уровня.
Описание слайда:
СУБД «Линтер» 2. Для информации: RAL – уровень чтения; пользователь может получать (читать) информацию, RAL-уровень которой не выше его собственного RAL-уровня (может читать менее конфиденциальные данные); WAL – уровень ценности или уровень доступа на запись (модификацию, удаление); пользователь может модифицировать (удалять) информацию, WAL-уровень которой не выше его RAL-уровня.

Слайд 91





СУБД «Линтер»
Описание слайда:
СУБД «Линтер»

Слайд 92





СУБД «Линтер»
Создать пользователя с произвольными уровнями может только администратор системы. Остальные администраторы (DBA) могут создавать пользователей (или изменять их уровень) лишь в пределах отведенных им уровней. 
Пользователь может принудительно пометить вводимые данные, указав в списке атрибутов уровни доступа для соотв. записей и полей (для операций INSERT или UPDATE). 
По умолчанию вносимые данные наследуют уровни пользователя, вносящего/изменяющего данные. 
Уровни, как и группы, нельзя использовать в случае, если они не созданы специальными запросами.
Описание слайда:
СУБД «Линтер» Создать пользователя с произвольными уровнями может только администратор системы. Остальные администраторы (DBA) могут создавать пользователей (или изменять их уровень) лишь в пределах отведенных им уровней. Пользователь может принудительно пометить вводимые данные, указав в списке атрибутов уровни доступа для соотв. записей и полей (для операций INSERT или UPDATE). По умолчанию вносимые данные наследуют уровни пользователя, вносящего/изменяющего данные. Уровни, как и группы, нельзя использовать в случае, если они не созданы специальными запросами.



Похожие презентации
Mypresentation.ru
Загрузить презентацию