Фиксированные роли баз данных.
db_owner |
Полный доступ к БД (множество пользователей, обладающих правами владельца БД) |
Db_accessadmin |
Создание и удаление пользователей БД из числа уже имеющихся |
Db_securityadmin |
Не дает возможность создавать новых пользователей, но позволяет управлять разрешениями, ролями и членами ролей. |
Db_ddladmin |
Выполнения любых команд DDL(но нельзя GRANT, DENY и REVOKE) |
Db_backupoperator |
Выполнение команд модуля DBCC (DBCC CHECKPOINT, DBCC DBREIBDEX) а также команды BACKUP – резервного копирования БД |
Db_datareader |
Возможность чтения данных во всех таблицах баз данных. |
Db_datawriter |
Право применения INSERT, UPDATE, DELETE в любых таблицах базы данных |
Db_denydatareader |
Запрет просмотра данных в любой таблице базы данных |
Db_denydatawriter |
Запрета применения INSERT, UPDATE, DELETE во всех таблицах базы данных. |
В отличие от сервера базы данных могут иметь пользовательские роли и роли приложения, которые создаёт администрато с помощью Enterprise Manager или Transact – SQL индивидуально для групп пользователей и групп приложений, наделяя их необходимыми правами доступа к конкретной базе данных.
Создание пользовательской роли БД:
Sp_addrole [@rolename=]<’имя роли’>
[,[@ownername=]<’владелец_роли’>]
В любую роль базы данных можно включать:
Пользовательские серверы
Роли сервера
Пользователей Windows NT/2000
Группы пользователей Windows NT/2000
Добавление пользователей:
Sp_addrolemember [@rolename=]<’имя роли’>,
[@membername=]<’имя_пользователя’>]
EXEC sp_addrolemember ‘OurTestRole’, ‘RealUser’
Удаление пользователей из роли:
EXEC sp_droprolemember ‘OurTestRole’, ‘RealUser’
Удаление роли:
EXEC sp_droprole ‘OurTestsRole’
РОЛЬ ПРИЛОЖЕНИЯ
Роль приложения позволяет выдать права доступа не конкретному пользователю или их шруппе, а приложению в целом.
Они не могут использоваться для подключения к БД.
Получив доступ к данным под бюджетом другой учётной записи, приложение активизирует роль приложения (через вызов хранимой процедуры sp_setapprole).
Далее в сеансе работы приложение будет обладать правами данной роли.
Лекция 2
Индексация в СУБД
Понятие индекса – Основная проблема в СУБД – это поиск нужных данных за минимальное время.
Быстрый поиск может быть выполнен в случае, если данные отсортированы.
Сортировка данных в таблице невозможна, т.к.критериев поиска может быть несколько.
Поэтому для таблицы с данными создаются специальные таблицы для каждого критерия поиска, которые называются ИНДЕКСЫ.
Индекс – это структура данных для быстрого поиска записей в таблице по значению ключа.
Методы организации индекса
Методы организации индексов: 1) Первичного ключа: А) Плотным индексом (некоторый индекс). Индексно прямой файл. Б) Неплотным индексом (кластерный индекс). Индексно последовательный файл. В) Б- деревья. 2) Вторичного ключа: А) Инвертируемые списки.
Плотный индекс (фото)…
Индекс Б – дерево.