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

alter role

alter role

Описание

Определяет отношения взаимного исключения между ролями; добавляет,

 

удаляет и изменяет пароли для ролей; определяет срок действия пароля,

 

минимальную длину пароля и максимальное количество неудачных по-

 

пыток подключения к серверу для указанной роли.

Синтаксис

alter role роль1 { add | drop } exclusive

 

{ membership | activation } роль2

 

alter role имя_роли [add passwd "пароль" |

 

drop passwd] [lock | unlock]

 

alter role { имя_роли | "all overrides" }

 

set { passwd expiration | min passwd length |

 

max failed_logins } значение_параметра

Параметры

роль1

 

Одна из ролей в паре взаимоисключающих ролей.

 

add

 

Добавляет роль, создавая пару ролей, находящихся в отношении

 

взаимного исключения; добавляет пароль к роли.

 

drop

 

Удаляет роль из пары ролей, находящихся в отношении взаимного

 

исключения; удаляет пароль из роли.

 

exclusive

 

Определяет две указанные роли как взаимоисключающие.

 

membership

 

Не позволяет предоставлять пользователям обе роли одновременно.

 

activation

 

Позволяет предоставлять пользователю обе роли одновременно, но не

 

разрешает активировать их одновременно.

 

роль2

 

Вторая из ролей в паре взаимоисключающих ролей.

 

имя_роли

 

Имя роли, пароль которой нужно добавить, удалить или изменить.

 

passwd

 

Добавляет пароль к роли.

280

ГЛАВА 7 Команды

пароль

Пароль, который нужно добавить к роли. Пароли должны соответст- вовать правилам для идентификаторов, а их длина должна быть не менее шести символов. Нельзя использовать в качестве паролей переменные.

lock

Блокирует указанную роль.

unlock

Разблокирует указанную роль.

all overrides

Применяет настройку ко всему серверу, а не к определенной роли.

set

Активирует следующий за ним параметр.

passwd expiration

Определяет срок действия пароля в днях. Это может быть любое значение от 0 до 32767 включительно.

min passwd length

Указывает минимальную длину, допустимую для заданного пароля.

max failed_logins

 

Указывает максимальное количество неудачных попыток

 

подключения к серверу для заданного пароля.

 

значение_параметра

 

Указывает значение параметра passwd expiration, min passwd length или

 

max failed_logins. Для активации параметра all overrides переменной

 

значение_параметра должно быть присвоено значение -1.

Примеры

Пример 1. Определение ролей intern_role и specialist_role как взаимо-

 

исключающих:

alter role intern_role add exclusive membership specialist_role

Пример 2. Определение ролей как взаимоисключающих на уровне членства (membership) и на уровне активации (activation):

alter role specialist_role add exclusive membership intern_role alter role intern_role add exclusive activation surgeon_role

Пример 3. Добавление пароля к существующей роли:

alter role doctor_role add passwd "physician"

Пример 4. Удаление пароля из существующей роли:

alter role doctor_role drop passwd

281

alter role

Пример 5. Блокирование роли physician_role:

alter role physician_role lock

Пример 6. Разблокирование роли physician_role:

alter role physician_role unlock

Пример 7. Установка для роли physician_role максимального числа неудачных попыток подключения к серверу, равного 5:

alter role physician_role set max failed_logins 5

Пример 8. Установка минимальной длины пароля (5 символов) для существующей роли physician_role:

alter role physician_role set min passwd length 5

 

Пример 9. Снятие ограничения на минимальную длину пароля для всех

 

ролей:

 

 

alter role "all overrides" set min passwd length -1

 

Пример 10. Снятие ограничения на максимальное количество неудачных

 

попыток подключения к серверу для всех ролей:

 

alter role "all overrides" set max failed_logins -1

Использование

Команда alter role определяет отношения взаимного исключения

 

между ролями и добавляет, удаляет и изменяет пароли ролей.

 

Дополнительную информацию об изменении ролей см. в книге

 

Руководство по системному администрированию.

 

Параметр all overrides удаляет системные настройки, сделанные

 

процедурой sp_configure с любым из следующих параметров:

 

passwd expiration

 

max failed_logins

 

min passwd length

Когда удаляется пароль для роли, удаляются значения параметров срока действия пароля и максимального количества неудачных попыток подключения к серверу.

Взаимоисключающие роли

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

Можно использовать взаимное исключение вместе с иерархией ролей, чтобы наложить ограничения на пользовательские роли.

282

ГЛАВА 7 Команды

Отношения взаимного исключения на уровне членства (membership) являются более сильным ограничением, чем отношения взаимного исключения на уровне активации (activation). Если две роли опреде- лены как взаимоисключающие на уровне членства, то они неявно будут таковыми и на уровне активации.

Если две роли, уже определенные как взаимоисключающие на уров- не членства, будут определены как взаимоисключающие на уровне активации, то это никак не отразится на определениях членства.

Отношения взаимного исключения на уровне активации добавля- ются и удаляются независимо от взаимного исключения на уровне членства.

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

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

Если администратор по безопасности определяет две роли как взаи- моисключающие на уровне активации и пользователи уже активи- ровали обе роли или установили активацию обеих ролей при входе в систему (режим по умолчанию), Adaptive Server делает эти роли взаимоисключающими, но выдает предупреждение с именами соот- ветствующих пользователей с конфликтующими ролями. Активиро- ванные роли пользователей не изменяются.

Изменение паролей ролей

Для изменения пароля роли необходимо сначала удалить существу-

 

 

ющий пароль, а затем добавить новый, как показано ниже:

 

 

alter role doctor_role drop passwd

 

 

alter role doctor_role add passwd "physician"

 

 

 

 

 

Примечание. Срок действия паролей, назначенных пользователь-

 

 

ским ролям, не ограничен.

 

 

 

Стандарты

Уровень соответствия стандарту SQL92: расширение Transact-SQL.

Полномочия

Команду alter role может выполнять только администратор по

 

безопасности системы.

283

alter role

См. также

Команды

create role, drop role, grant, revoke, set

 

Функции

mut_excl_roles, proc_role, role_contain, role_id, role_name

Системные процедуры sp_activeroles, sp_displaylogin, sp_displayroles, sp_modifylogin

284

Соседние файлы в папке БД задание ко 2 лабе и методичка