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

Откуда:
Сообщений: 1497
Здравствуйте.
Подскажите, есть процедура, которая должна выполняться пользователем1, у которого нет прав на массовую загрузку. Есть другой пользователь2, у которого эти права есть.
Если я процедуру запускаю пользователем2, то все нормально.
Если пользователем1, то ошибка "Нет разрешения на использование инструкции массовой загрузки."
Но ведь в процедуре прописано WITH EXECUTE AS 'пользователь2'.
В чем проблема?

ALTER PROCEDURE [dbo].[_Test]
WITH EXECUTE AS 'пользователь2'
AS
BEGIN
	SET NOCOUNT ON;  
	SELECT * FROM OPENROWSET(BULK 'C:\FTP\5_1\i_38_361.JPG' , SINGLE_BLOB) AS BINARY	
END
16 окт 15, 12:40    [18287245]     Ответить | Цитировать Сообщить модератору
 Re: Нет разрешения на использование инструкции массовой загрузки (2)  [new]
Glory
Member

Откуда:
Сообщений: 104751
Диам
В чем проблема?

В том, что ADMINISTER BULK OPERATIONS - это права логина, а не пользователя
16 окт 15, 12:45    [18287263]     Ответить | Цитировать Сообщить модератору
 Re: Нет разрешения на использование инструкции массовой загрузки (2)  [new]
Диам
Member

Откуда:
Сообщений: 1497
Glory, как же быть?
Прочитал про "EXECUTE AS, предложение (Transact-SQL)" - тут можно использовать только юзера, а не логин
и про "EXECUTE AS (Transact-SQL) " - тут можно использовать логин, но почему-то не срабатывает.
16 окт 15, 14:18    [18287986]     Ответить | Цитировать Сообщить модератору
 Re: Нет разрешения на использование инструкции массовой загрузки (2)  [new]
komrad
Member

Откуда:
Сообщений: 5746
Диам,

посмотрите решение с сертификатом - думаю, что это можно применить и в вашем случае

сертификат
16 окт 15, 14:23    [18288040]     Ответить | Цитировать Сообщить модератору
 Re: Нет разрешения на использование инструкции массовой загрузки (2)  [new]
o-o
Guest
Диам,

Оно не "почему-то", оно специально не срабатывает, это ж надо иметь impersonate на тот логин,
так если дать первому бесправному логину impersonate на второй с правами, это же все равно, что права второму явно выдать, ну так выдайте, если так и задумано, а если не хочется выдавать права, то изучайте сертификаты
16 окт 15, 14:27    [18288059]     Ответить | Цитировать Сообщить модератору
 Re: Нет разрешения на использование инструкции массовой загрузки (2)  [new]
Glory
Member

Откуда:
Сообщений: 104751
Диам
Glory, как же быть?
Прочитал про "EXECUTE AS, предложение (Transact-SQL)" - тут можно использовать только юзера, а не логин
и про "EXECUTE AS (Transact-SQL) " - тут можно использовать логин, но почему-то не срабатывает.

Давно уже есть FILESTREAM/FileTable для хранения "картинок"
16 окт 15, 14:29    [18288076]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить