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

Откуда:
Сообщений: 3
Доброго времени суток, коллеги.

Уточню сразу, что являюсь программистом 1С и привык обращаться к данным с помощью внутреннего языка 1С Предприятия 8. В языке запросов SQL понимаю крайне мало.

Возникла задача на уровне SQL Server 2000 установить для конкретного пользователя полные права на все операции с таблицами и на все операции с процедурами в конкретной базе данных.

Из поиска в Google узнал, что за эту операцию отвечают две конструкции: GRANT ALL и GRANT EXEC.

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

GRANT ALL ON <TABLE-NAME> TO <USER-NAME>

Мне необходимо вместо <TABLE-NAME> указать команду, по сути означающую <ВСЕ-ТАБЛИЦЫ>.

Эта конструкция, на сколько я понимаю, должна проставить все возможные права на все таблицы базы.

Тоже самое необходимо для всех STORED PROCEDURES.

Заранее прошу прощения за незнание темы, но всё же прошу совета по-сути, без комментариев вроде RTMF.

Заранее благодарю за помощь.
4 июл 09, 20:12    [7377006]     Ответить | Цитировать Сообщить модератору
 Re: Установка прав пользователя в MS SQL SERVER 2000  [new]
i2akai1
Member

Откуда: Петербург
Сообщений: 217
Fade,

Можно просто дать этому пользователю роль db_owner на нужной базе
6 июл 09, 09:00    [7378942]     Ответить | Цитировать Сообщить модератору
 Re: Установка прав пользователя в MS SQL SERVER 2000  [new]
Fade
Member

Откуда:
Сообщений: 3
i2akai1, пробовал. Такой вариант дает доступ ко всем таблицам, но есть еще одно но. Необходимо проставить для роли public право на выполнение всех stored procedures. Вот с этим сейчас проблема.

А проставить права на все таблицы можно так же с помощью простой строки:

GRANT ALL TO [user]
6 июл 09, 09:55    [7379091]     Ответить | Цитировать Сообщить модератору
 Re: Установка прав пользователя в MS SQL SERVER 2000  [new]
i2akai1
Member

Откуда: Петербург
Сообщений: 217
Fade,

Запускаете в Query Analyzer (предварительно установив Results To Text) в нужной базе запрос:
  select 'grant execute on ' + SPECIFIC_SCHEMA + '.[' + SPECIFIC_NAME + '] to public'
  from INFORMATION_SCHEMA.ROUTINES where ROUTINE_TYPE = 'PROCEDURE'
 

затем из окна результата (оно должно быть в текстовом виде)
копируете получившийся текст в окно запроса и запускаете :)
6 июл 09, 10:37    [7379274]     Ответить | Цитировать Сообщить модератору
 Re: Установка прав пользователя в MS SQL SERVER 2000  [new]
Fade
Member

Откуда:
Сообщений: 3
i2akai1,

Суть не понял абсолютно, но обязательно попробую. О результате доложусь. :)

Спасибо!
6 июл 09, 18:03    [7382726]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить