powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Назначение прав из хранимой процедуры, возможно?
2 сообщений из 2, страница 1 из 1
Назначение прав из хранимой процедуры, возможно?
    #32064350
doctor_no
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Большое спасибо всем кто откликнулся на мой предыдущий пост, но...

Можно ли вообще добавить пользователя в роль/назначить права изнутри хранимой процедуры?

Я пытаюсь сделать следущее:
есть пользователь 'tst1' - изначально член только группы 'public' которая имеет права на запуск процедуры 'spa_SetRights'
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
CREATE PROCEDURE [dbo].[spa_SetPermitions]
@arg1 INTEGER
AS
DECLARE @query VARCHAR( 255 ),
        @username VARCHAR( 50 );
SET @username = SYSTEM_USER;
SET @query = 'GRANT SELECT ON tg_Documents TO ' + SYSTEM_USER + ' AS dbo';
IF @arg1 =  1 
BEGIN
  EXEC (@query);
END;

Код: plaintext
1.
GRANT EXECUTE ON spa_SetPermitions TO public WITH GRANT OPTION AS dbo


Допустим в этом примере IF @arg1=1 является логической проверкой прав и при успешном выполнении должен разрешить пользователю SELECT на таблицу 'tg_Documents'

При запуске процедуры от tst1 получаем ошибку
Код: plaintext
1.
2.
Server: Msg  4618 , Level  16 , State  1 , Line  1 
You do not have permission to use dbo in the AS clause.


Если-же убрать в тексте процедуры 'AS dbo', то получаем ошибку
Код: plaintext
1.
2.
Server: Msg  4613 , Level  16 , State  1 , Line  1 
Grantor does not have GRANT permission.


Неужели нет никакого решения этой проблемы?
...
Рейтинг: 0 / 0
Назначение прав из хранимой процедуры, возможно?
    #32064366
vap
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Наверное тот кто запускает SP не имеет прав для изменения собственника. Вы самому себе назначаете dbo это большая честь быть dbo.
Команда GRANT разрешена для db_securityadmin и db_owner
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Назначение прав из хранимой процедуры, возможно?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]