Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
SQL2008_Administration.doc
Скачиваний:
91
Добавлен:
08.11.2018
Размер:
3.38 Mб
Скачать

4.3 Пользователи баз данных и схемы

Пользователи баз данных (database users) — это специальные объекты, которые создаются на уровне базы данных и используются для предоставления разрешений в базе данных (на таблицы, представления, хранимые процедуры).

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

SERVER.DATABASE.SCHEMA.OBJECT

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

GRANT SELECT ON SCHEMA :: имя_схемы TO имя_пользователя_БД

Применение схемы дает ряд дополнительных преимуществ по сравнению со старым подходом:

  • нескольким пользователям можно назначить одну и ту же схему по умолчанию;

  • несколько пользователей могут владеть одной и той же схемой. При этом один пользователь может являться владельцем сразу нескольких схем;

  • при удалении пользователя из базы данных не придется переименовывать его объекты;

  • как уже говорилось, упрощается предоставление разрешений для наборов объектов в базе данных.

4.3.1 Создание, изменение и удаление пользователей базы данных

Создать пользователя базы данных можно:

  • С помощью графического интерфейса Management Studio из контейнера Имя_Базы_ДанныхSecurity Users;

  • при помощи команды CREATE USER. Например:

CREATE USER DBUser1 FOR LOGIN Login1 WITH DEFAULT_SCHEMA=dbo

При создании пользователя вам потребуется указать:

  • имя пользователя;

  • учетную запись (SQL Server или Windows), которая будет назначена пользователю данной БД. Можно создать пользователя, которому не назначена никакая учетная запись (при помощи переключателя without login или одноименной команды). Пользователи такого типа используются только для дополнительной настройки безопасности в Service Broker;

  • сертификат или асимметричный ключ;

  • схему по умолчанию;

  • для каких схем он будет являться владельцем;

  • какие роли базы данных будут ему назначены.

Обязательных параметра всего два — имя пользователя и учетная запись.

Изменение свойств пользователя и его удаление

  • С помощью графического интерфейса Management Studio из контейнера Имя_Базы_ДанныхSecurity Users;

  • Изменение свойств пользователя - при помощи команды ALTER USER

  • Удаление пользователя - при помощи команды DROP USER

Удалить пользователя, владеющего какими-либо объектами в базе данных, нельзя.

4.3.2 Встроенные пользователи базы данных

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

  • dbo — пользователь-владелец базы данных, который получает полные права на свою БД (при помощи встроенной роли базы данных db_owner). В SQL Server 2008 dbo имеет возможность удалять свою базу данных;

  • guest — этот специальный пользователь предназначен для предоставления разрешений всем учетным записям, которым не соответствует ни один пользователь в базе данных.

  • INFORMATION_SCHEMA — этому пользователю не соответствует ни одна учетная запись. Его единственное значение — быть владельцем схемы INFORMATION_SCHEMA, в которой хранятся представления системной информации;

  • sys — этому специальному пользователю, как и INFORMATION_SCHEMA, не могут соответствовать учетные записи. Он является владельцем схемы SYS, к которой принадлежат системные объекты базы данных.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]