Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Изменение контекста выполнения в ХП без прав IMPERSONATE у CALLER  [new]
diopol
Member

Откуда:
Сообщений: 9
Две задачи.

Первая: необходимо создать ХП, в которой идет работа с объектами уровня сервера (например, CREATE LOGIN). Необходимо, чтобы эту процедуру мог успешно запустить пользователь, у которого нет никаких прав, кроме права на запуск этой процедуры.
Возможно ли такое осуществить. Если да, то как?

Вторая: можно ли написать ХП, в которой меняется контекст на другого пользователя и этот контекст сохраняется после вызова, если этот пользователь не имеет прав IMPERSONATE.

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

Спасибо.
3 авг 09, 16:03    [7491500]     Ответить | Цитировать Сообщить модератору
 Re: Изменение контекста выполнения в ХП без прав IMPERSONATE у CALLER  [new]
Glory
Member

Откуда:
Сообщений: 104760
1. Вы прочитали про EXECUTE AS в хелпе в статье хелпа CREATE PROCEDURE ?
2. Вы ознакомились со статьей Context Switching хелпа ?
3 авг 09, 16:52    [7491804]     Ответить | Цитировать Сообщить модератору
 Re: Изменение контекста выполнения в ХП без прав IMPERSONATE у CALLER  [new]
DeColo®es
Member

Откуда: Москва
Сообщений: 5499
Блог
1) Смотрите тут
2) Низя. Да и зачем?
3 авг 09, 16:52    [7491806]     Ответить | Цитировать Сообщить модератору
 Re: Изменение контекста выполнения в ХП без прав IMPERSONATE у CALLER  [new]
ererererer1
Member

Откуда:
Сообщений: 31
сертификаты или execute as.
вторая ситуация не совсем понятна - можете такой сценарий описать?
3 авг 09, 22:31    [7492780]     Ответить | Цитировать Сообщить модератору
 Re: Изменение контекста выполнения в ХП без прав IMPERSONATE у CALLER  [new]
diopol
Member

Откуда:
Сообщений: 9
1. Действительно, сертификаты. Спасибо DeColo®es
2. Теперь этот сценарий для меня тоже не имеет смысла.
4 авг 09, 01:51    [7493266]     Ответить | Цитировать Сообщить модератору
 Re: Изменение контекста выполнения в ХП без прав IMPERSONATE у CALLER  [new]
diopol
Member

Откуда:
Сообщений: 9
С сертификатами тоже не все так просто.
Не совсем удобно, что такую ХП можно создать только в БД master.
4 авг 09, 03:18    [7493301]     Ответить | Цитировать Сообщить модератору
 Re: Изменение контекста выполнения в ХП без прав IMPERSONATE у CALLER  [new]
DeColo®es
Member

Откуда: Москва
Сообщений: 5499
Блог
diopol
С сертификатами тоже не все так просто.
Не совсем удобно, что такую ХП можно создать только в БД master.
Хм...
Существование в какой-либо другой (кроме служебной серверной) базе процедуры, которая может "не спрашивая" делать что угодно на сервере было бы гораздо хуже. ;)
4 авг 09, 18:59    [7497713]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить