33670

МОДЕЛЬ БЕЗОПАСНОСТИ СУБД MS SQL. РЕЖИМЫ И ТАБЛИЦЫ ПРОВЕРКИ ПРАВ

Доклад

Информатика, кибернетика и программирование

МОДЕЛЬ БЕЗОПАСНОСТИ СУБД MS SQL. В инф сист 2 уровня защиты данных: ур приложения и ур БД 3 основных механизма разграничения доступа: Для создания учетных записей пользователя можно воспользоваться языком SQL и утилитой командной строки SQL Plus для Orclе. В MS SQL для добавления учётных записей вы можете использовать SQL Enterprise Mnger или системную процедуру sp_ddlogin. По умолчанию доступом к SQL Serverу пользуются администраторы BUILDIN dministrtors и s.

Русский

2013-09-06

114.5 KB

12 чел.

39. МОДЕЛЬ БЕЗОПАСНОСТИ СУБД MS SQL.  РЕЖИМЫ И ТАБЛИЦЫ ПРОВЕРКИ ПРАВ.

В инф сист 2 уровня защиты данных: ур приложения и ур БД

3 основных механизма разграничения доступа:

Для создания учетных записей пользователя можно воспользоваться языком SQL и утилитой командной строки SQL Plus для Oraclе.

Create user NAME identified by password

Если добавить externally, то используется логин и пароль из ОС.

При создании пользователя можно назначить ему табличное пространство, квоты на занимаемый объем памяти и процессорное время и т. д.

В MS SQL для добавления учётных записей вы можете использовать SQL Enterprise Manager или системную процедуру sp_addlogin. Только системные администраторы или администраторы безопасности  могут  выполнять  эту  процедуру.  При  добавлении  новой  учётной  записи, добавляется запись в системную таблицу sysxlogins базы данных master.  По  умолчанию  доступом  к SQL Server-у  пользуются  администраторы BUILDIN/ Administrators и sa. Учётные записи BUILDIN/ Administrators используются по умолчанию для всех администраторов Windows 2000. Они имеют все права на SQL Server и

все базы данных. Системная  таблица  sysusers  в  базе  данных  содержит  одну  строку  для  каждого пользователя Windows 2000, группы Windows 2000, пользователя SQL Server или роли в базе данных. Разрешения назначенные на входящие в таблицу sysusers, хранятся в системной таблице sysprotects текущей базы данных.  Для  доступа  к  базе  данных,  учётная  запись  может  использовать  одно  из  двух – назначенную пользовательскую учётную запись или одну из учётных записей по умолчанию. Для  добавления пользовательской  учётной  записи  к  базе  данных,  вы  можете использовать SQL Enterprise Manager  или  выполнить  системную  встроенную  процедуру sp_grantdbaccess.  Вы  можете  также  добавлять  пользовтельские  учётные  записи  к  базе данных  во  время  создания  учётной  записи.  Только  владельцы  базы  данных  или администраторы могут выполнять sp_grantdbaccess.

Далее пользователю назначают привилегии. 2 типа привилегий – объектные (доступ к объектам) и системные (возможность создавать другие объекты и менять их структуру. Каждый пользователь получает в свое распоряжение часть БД – схему. Имя схемы = имени пользователя. Если пользователь имеет привилегию any, то он может созавать объекты не только в своей схеме. При этом он владелец этих объектов(т. е. имеет все привилегии на манипулирование с ними). Владелец может предоставлять привилегии пользователям на использование своих объектов. Можно экспортировать объекты из одной схемы в другую.

Обычно системные привилегии у разработчиков, а объектные – упользователей.

Объектные – select, insert, update, execute и тд.

Предоставление привилегий:

Grand список_привилегий to имя_пользователя.

Можно давать привилегии на некоторую часть объекта (например поля таблицы)

2) Роли

Роль – это именованная совокупность привилегий. Роль пользователю можно присвоить через команду grand.

Можно создать собственную роль и присвоить ей привилегии.

Create role role_name

Grand список привилегий to role_name

В Oraclе есть стандартные роли:

Connect, resorse, dba.

Отменяют привилегии командой revoke.

Фиксированные  серверные   роли в MS SQL обеспечивают  сгруппированные  административные привилегии на серверном уровне. Они управляются независимо от пользователей баз данных на серверном уровне и хранятся в системной таблице master.sysxlogins.

Права  доступа  пользователя  или  роли  могут  быть  в  трёх  состояниях:  разрешено, запрещено  или  отменено.  Права  доступа,  которые  небыли  разрешены  или  запрещены пользователю нейтральны – будто они были отменены. Права доступа хранятся в системной таблице sysprotects каждой базы данных. 

Средства защиты информации в базах данных

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

В настоящее время наиболее распространёнными СУБД можно назвать:

  •  Oracle
  •  Microsoft SQL Server
  •  Sybase 

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

В распределенной информационной среде обязательным является наличие следующих компонентов борьбы с потенциальными угрозами:

- идентификация и проверка подлинности (аутентификация) пользователей (применяются либо соответствующие механизмы ОС, либо SQL-оператор CONNECT);

- управление доступом к данным, когда владелец объекта передает права доступа к нему (привилегии доступа) по своему усмотрению;

- механизм учета всех действий, влияющих на безопасность; защита регистрационной информации от искажений.

Основным средством взаимодействия с реляционными СУБД является язык SQL (Structured Query Language) — непроцедурный инструмент определения и манипулирования данными. В самом стандарте SQL уже определены некоторые механизмы обеспечения безопасности. Так, в соответствии с идеологией языка SQL права доступа пользователя к таблицам баз данных контролируются на основе механизма привилегий. То есть для выполнения любого действия над таблицей пользователь должен обладать соответствующей привилегией (реально все возможные действия описываются фиксированным стандартным набором привилегий). Пользователь, создавший таблицу, автоматически становится владельцем всех возможных привилегий на выполнение операций над этой таблицей. В число этих привилегий входит привилегия на передачу всех или некоторых привилегий по отношению к данной таблице другому пользователю, включая привилегию на передачу привилегий.

В стандарте SQL/89 определяется упрощенная схема механизма привилегий. Во-первых, назначение привилегий возможно только при определении таблицы. Во-вторых, пользователь, получивший некоторые привилегии от других пользователей, может передать их дальше только при определении схемы.

В стандарте SQL/92 появилась возможность создавать хранимые и представляемые таблицы и задавать или удалять привилегии доступа в любой момент времени, в любой транзакции вне оператора определения схемы. Появились операторы уничтожения таблиц, которые также можно выполнять внутри любой транзакции.

В добавление к возможностям SQL/89 определения ограничений целостности на уровне столбца и(или) таблицы в SQL/92 допустимо отдельное определение ограничений, распространяющееся в общем случае на несколько таблиц. Появилась возможность определения отложенных (проверяемых при завершении транзакции) ограничений целостности. Расширены возможности определения ограничений внешнего ключа (ограничений ссылочной целостности). Введены средства определений, изменения и отмены определения домена (возможно множество значений некоторого типа данных).

. Режимы проверки прав пользователя

В версии 7.0 поддерживается два механизма проверки прав пользователя:

  •  Стандартный (Standart Security) - права определяются на основании идентификатора и пароля, передаваемых непосредственно SQL Server
  •  Интегрированный (Integrated Security) - проверка выполняется средствами Windows NT.

Контроль прав доступа подразумевает проверку того, что может делать пользователь, получив доступ к серверу. При этом SQL Server использует информацию из нескольких системных таблиц (рис. 6.1).

Связь таблиц, используемых при проверке прав доступа

Рис. 6.1

Пользователь, получивший доступ к серверу, автоматически подключается к базе данных (БД), назначенной ему по умолчанию. В рамках этой БД пользователь получает некоторый набор прав (по умолчанию пользователь обладает правами, определенными для роли public).

В таблице SysUsers хранятся два элемента: один описывает права доступа к БД, другой — к объектам БД.

При подключении под именем пользователя Windows NT серверу передается имя группы, к которой принадлежит пользователь и имя его учетной записи. Сервер ищет в таблице Syslogins запись с упоминанием учетной записи пользователя или группы, к которой он принадлежит. Если таковая найдена, пользователь получает доступ к серверу. Такая система проверки доступа обеспечивает большую надежность системы безопасности, чем проверка прав средствами SQL Server.

При проверке прав доступа собственными средствами SQL Server в таблице Sysligins запись с упоминанием об идентификаторе, введенном пользователем, и, обнаружив ее, сравнивает введенный пароль с хранящимся в таблице. Если идентификатор найден и пароль соответствует записанному ранее, пользователь получает доступ к серверу.

6.3. Получение доступа к БД

Право на доступ к БД организуется установлением связи идентификатора пользователя (Login) и учётного имени (User account) в БД. Учётное имя может быть создано:

  •  На основании имени группы Windows 
  •  На основании имени учетной записи в домене Windows 

На основании идентификатора пользователя SQL Server Идентификатор пользователя После установки SQL Server создаются два стандартных идентификатора:

  •  Sa - Сохранён для совместимости с приложениями, написанными под SQL Server версии 6.x. Имеет пустой пароль.
  •  BULTINXAdministrators - Служит для обеспечения доступа к серверу всем членам группы администраторов Windows.

Для создаваемой БД есть два учётных имени:

  •  Dbo - ставится в соответствие системному администратору. Удалить нельзя.
  •  Guest - служит для допуска пользователей, не имеющих учётной имени в БД

Учётное имя Guest не может быть удалено из БД Master и Tempdb.

Роль - именованный набор прав на уровне сервера или БД. Роль может включать:

  •  пользователя Windows;
  •  группу Windows; пользователя SQL Server;
  •  другие роли.

Принадлежность к роли определяется после подключения пользователя к БД. Имеются роли уровня сервера (например, Sysadmin, Serveradmin и др.) и роли уровня БД (например, db_owner, db_datareader и др.).

Роль Public - стандартная роль уровня БД, ассоциируемая с набором прав по умолчанию для любого пользователя БД.

6.4. Доступ к объектам БД

Доступ к объектам БД регулируется путём установления разрешений (permissions). Имеется несколько типов разрешений.

Выполнение SQL выражений

Здесь необходимо выделить:

  •  разрешение на создание БД. Это право распространяется на сам оператор, а не на конкретную БД или её объект;
  •  разрешение на выполнение остальных SQL выражений. Может относиться к БД или её объектам.

Действия с объектами БД

Разрешения на действия с объектами определяют права пользователя при работе с данными или исполнении хранимых процедур:

  •  разрешения на работу с таблицами и просмотрами;
  •  разрешения на доступ к определённым полям;
  •  разрешения на исполнение хранимых процедур.

Предопределённые разрешения

Сюда относятся разрешения, которые получает пользователь в силу принадлежности к определённой роли и разрешения, которыми обладает владелец объекта.


 

А также другие работы, которые могут Вас заинтересовать

46786. Imperative sentences 30.5 KB
  Impertive sentences express commnds which convey the desire of the speker to mke someone generlly the listener perform n ction. Besides commnds proper impertive sentences my express prohibition request n invittion wrning persusion etc. Be quick Formlly commnds re mrked by the predicte verb in the impertive mood positive or negtive the reference to the second person lck of subject nd the use of the uxiliry do in negtive in emphtic sentences with the verb to be. Commnds re generlly chrcterized by the flling tone lthough the rising...
46789. Системное и смысловое строение сознания 30.5 KB
  Системное и смысловое строение сознания. Выготский определил область своего исследования как вершинную психологию психологию сознания. Согласно ему становление сознания является существенной линией развития человека. Под системным строением сознания Выготский понимал своеобразное отношение отдельных функций друг к другу то есть то что на каждой возрастной ступени определенные функции стоят в известном отношении друг к другу образуют определенную систему сознания.
46792. Общая характеристика подросткового возраста 30.5 KB
  Наиболее аффективные бурные реакции возникают при попытке коголибо из окружающих ущемить самолюбие подростка. Так как в этот период в личности подростка сосуществуют прямо противоположные потребности и черты. Внешний вид подростка еще один источник конфликта. У подростка появляется своя позиция.