КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Принципалы уровня базы данных
Принципалы уровня SQL Server Принципалы уровня Windows l Имя входа домена Windows l Локальное имя входа Windows l Имя входа SQL Server (login) l Роль сервера l Пользователь базы данных (user) l Роль базы данных l Роль приложения Login – это принципал, который идентифицируется внутри сервера (объект сервера). User – это принципал, который идентифицируется внутри БД (объект БД). Роль в SQL – это поименованный набор разрешений. Различают роли серверные, базы данных и фиксированные. Все роли, кроме public, фиксированные роли - набор разрешений, который нельзя ни убавить, ни прибавить. Можно только назначать логину роль. Фиксированные серверные роли распространяются на весь сервер. Каждый член фиксированной серверной роли может добавлять другие имена входа к той же роли. Фиксированные роли базы данных задаются на уровне базы данных и предусмотрены в каждой базе данных. Каждый пользователь (user) базы данных принадлежит к роли базы данных public. В отличие от серверных ролей, которые могут быть только встроенными, роли баз данных могут быть как встроенными, так и пользовательскими. Встроенные роли баз данных обладают предопределенным набором разрешений, а пользовательские роли можно использовать для группировки пользователей при предоставлении разрешений. Создать пользовательскую роль можно с помощью скрипта или студии: CREATE ROLE DBRole1; Кроме имени роли, при создании можно также указать ее владельца. Если вы создаете роль при помощи графического интерфейса, вы можете сразу назначить роль владельцем схемы в базе данных и назначить пользователей, которые будут обладать правами этой роли. Роль public – не фиксированная, т.е. можно добавлять разрешения. Если пользователю не назначена никакая роль, то public обладают все пользователи. При подключении все пользователи приобретают набор разрешений public. При создании любой базы данных в ней автоматически создаются четыре специальных пользователя (информация 2005 сервера!!!): l dbo (от database owner) — пользователь-владелец базы данных. Он автоматически создается для того логина, от имени которого была создана эта база данных. Конечно же, как владелец, он получает полные права на свою базу данных. l При создании база данных включает в себя пользователя guest по умолчанию. Разрешения, предоставленные пользователю guest, наследуются пользователями, которые не имеют четной записи пользователя в базе данных.Пользователя guest нельзя удалить, но его можно отключить, если отменить его разрешение CONNECT. l INFORMATION_SCHEMA — этому пользователю не может соответствовать ни один логин. Его единственное значение —быть владельцем схемы INFORMATION_SCHEMA, в которой хранятся представления системной информации для базы данных; l sys — этому специальному пользователю, как и INFORMATION_SCHEMA, не могут соответствовать логины. Он является владельцем схемы SYS, к которой принадлежат системные объекты базы данных. Роль приложения – это разрешения, предоставляемые не пользователю, а приложению, из которого пользователь подключается к базе данных. Применение этого способа выглядит так: l пользователь от имени любого логина подключается к серверу и делает нужную базу данных текущей; l затем пользователь выполняет хранимую процедуру sp_setapprole, чтобы активизировать указанную им роль приложения. При этом в базе данных он получает права этой роли приложения (и теряет свои текущие права); l после того, как необходимость в правах роли приложения закончилась, пользователь может опять переключиться на свою исходную учетную запись (sp_unsetapprole.)+ Имперсонизация (олицетворение) – свойство программного объекта обладать заданными разрешениями по отношению к другим объектам. Применяется для создания дополнительного уровня безопасности в информационной системе.
32. Применение XML: правильные и валидные документы XML, конструкции FOR XML AUTO, FOR XML PATH, функция OPENXML, тип XML, применение XQUERY-конструкций, коллекции XML-схем и их применение, типизированые XML-столбцы, XML: Extensible Markup Language – расширяемый язык разметки. Правильно построенный документ – соответствует синтаксическим правилам XML. Валидный документ – соответствует семантическим правилам. Семантические правила описываются с помощью специальных схем. Для получения таблицы из реляционного вида в формат XML, используют следующие конструкции: FOR XML AUTO – используется в селект-запросе для получения строк в простейшем xml-формате (атрибутная форма таблицы). Пример: Имя тега будет совпадать с именем таблицы, а в качестве атрибутов будут имена столбцов: FOR XML PATH – используется в селект-запросе для получения строк в не атрибутной, теговой форме. Т.е. имена столбцов будут записаны отдельно в каждом теге. Функция OPENXML позволяет получить доступ к XML-данным так, как если бы это был реляционный набор строк. Чтобы писать запросы в отношении XML-документа с использованием OPENXML, необходимо сначала вызвать хранимую процедуру sp_xml_preparedocument. Таким образом, производится синтаксический анализ XML-документа и возвращается дескриптор для проанализированного документа, готового к использованию. Проанализированный документ является представлением дерева объектной модели документа (DOM) различных узлов в XML-документе. Дескриптор документа передается OPENXML. Затем инструкция OPENXML выдает представление документа в виде набора строк, основываясь на переданных ей аргументах. Пример: declare @xml varchar(2000)= --наш xml-документ '<?xml version="1.0" encoding="UTF-8"?> @hxml int EXEC sp_xml_preparedocument @hxml output, @xml -- процедура перевода, получаем дескриптор INSERT INTO AUDITORIUM(AUDITORIUM,AUDITORIUM_NAME,AUDITORIUM_CAPACITY,AUDITORIUM_TYPE) SELECT * FROM openxml(@hxml, 'ROOT/X',2)—вызов функции с параметрами
Дата добавления: 2015-05-09; Просмотров: 788; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |