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

Откуда: Москва
Сообщений: 1145
В Аксесном форуме не ответили, может здесь кто скажет.

Access 2003 MSSQL2008
Создаю роль для пользователей разрешая доступ к тем или иным ресурсам.
дал право на запуск ХП
После запуска появляется ошибка
"Запрещено разрешение "EXECUTE" на "sp_OACreate"
ХП на самом деле использует sp_OACreate
Пробовал добавлять схему sys с разрешением на запуск, не помогло.
Как дать требуемое разрешение для роли?
Спасибо.
21 июл 09, 09:53    [7438484]     Ответить | Цитировать Сообщить модератору
 Re: разрешение на sp_OACreate  [new]
MasterZ
Member

Откуда: Москва
Сообщений: 1145
Не ужели такой сложный вопрос, что не нашлось ни однго отвечающего.
21 июл 09, 13:54    [7440218]     Ответить | Цитировать Сообщить модератору
 Re: разрешение на sp_OACreate  [new]
Glory
Member

Откуда:
Сообщений: 104751
MasterZ
Не ужели такой сложный вопрос, что не нашлось ни однго отвечающего.

А открыть в хелпе статью по sp_OACreate и прочитать параграф Permissions религия не позволяет ?
21 июл 09, 14:00    [7440264]     Ответить | Цитировать Сообщить модератору
 Re: разрешение на sp_OACreate  [new]
MasterZ
Member

Откуда: Москва
Сообщений: 1145
Glory,



Permissions
Requires membership in the sysadmin fixed server role.


sp_OACreate - используется в ХП, которая закачивает курсы валют с сайта СБ.
Обращение к этой ХП идет при создании нового документа. Документы соответсвенно создают пользователи. Это получается, что каждому пользователю нужно дать права sysadmin-а, чтобы он мог получать актуальные курсы валюты.
Подскажите, как сделать, чтобы курсы определялись без прав сисадмина?
22 июл 09, 09:54    [7443426]     Ответить | Цитировать Сообщить модератору
 Re: разрешение на sp_OACreate  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
MasterZ
sp_OACreate - используется в ХП, которая закачивает курсы валют с сайта СБ.
Обращение к этой ХП идет при создании нового документа. Документы соответсвенно создают пользователи. Это получается, что каждому пользователю нужно дать права sysadmin-а, чтобы он мог получать актуальные курсы валюты.
А нафига запрашивать курсы валют, которые меняются раз в день, каждый раз, когда пользователь создает документ?
22 июл 09, 11:29    [7444136]     Ответить | Цитировать Сообщить модератору
 Re: разрешение на sp_OACreate  [new]
MasterZ
Member

Откуда: Москва
Сообщений: 1145
Гавриленко Сергей Алексеевич
MasterZ
sp_OACreate - используется в ХП, которая закачивает курсы валют с сайта СБ.
Обращение к этой ХП идет при создании нового документа. Документы соответсвенно создают пользователи. Это получается, что каждому пользователю нужно дать права sysadmin-а, чтобы он мог получать актуальные курсы валюты.
А нафига запрашивать курсы валют, которые меняются раз в день, каждый раз, когда пользователь создает документ?


Дело в том, что пользователь может редактировать старый документ, или изменять дату документа, поэтому с сайта СБ берется курс, который был на введенную дату. Даты могут быть из периода за последние три года. Поэтому не храняться все курсы за каждый день.
22 июл 09, 12:30    [7444571]     Ответить | Цитировать Сообщить модератору
 Re: разрешение на sp_OACreate  [new]
проходящий.
Guest
MasterZ
Дело в том, что пользователь может редактировать старый документ, или изменять дату документа, поэтому с сайта СБ берется курс, который был на введенную дату. Даты могут быть из периода за последние три года. Поэтому не храняться все курсы за каждый день.
И нафига тут нужно дерганье сервера? Да еще и с правами sa? На клиенте не проще сделать все сделать?
22 июл 09, 12:34    [7444595]     Ответить | Цитировать Сообщить модератору
 Re: разрешение на sp_OACreate  [new]
iljy
Member

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

сделайте ОДНУ хранимку от имени админа с EXECUTE AS, и дергайте ее из остальных.
22 июл 09, 13:02    [7444811]     Ответить | Цитировать Сообщить модератору
 Re: разрешение на sp_OACreate  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
MasterZ
Гавриленко Сергей Алексеевич
MasterZ
sp_OACreate - используется в ХП, которая закачивает курсы валют с сайта СБ.
Обращение к этой ХП идет при создании нового документа. Документы соответсвенно создают пользователи. Это получается, что каждому пользователю нужно дать права sysadmin-а, чтобы он мог получать актуальные курсы валюты.
А нафига запрашивать курсы валют, которые меняются раз в день, каждый раз, когда пользователь создает документ?


Дело в том, что пользователь может редактировать старый документ, или изменять дату документа, поэтому с сайта СБ берется курс, который был на введенную дату. Даты могут быть из периода за последние три года. Поэтому не храняться все курсы за каждый день.
А закачать один раз все в свою табличку, а потом раз в сутки ночью новое докачивать не судьба? И что будет делать пользователь, если интернет поломается, документ создать не сможет?
22 июл 09, 13:16    [7444927]     Ответить | Цитировать Сообщить модератору
 Re: разрешение на sp_OACreate  [new]
MasterZ
Member

Откуда: Москва
Сообщений: 1145
iljy
MasterZ,

сделайте ОДНУ хранимку от имени админа с EXECUTE AS, и дергайте ее из остальных.


Execute as login = 'admin'
		dbo.spDefaultRateFromWWW @codCurrency, @D1, @Res OUTPUT 

ругается ему не нравится синтаксис возле dbo, что ему нужно?
22 июл 09, 15:06    [7445839]     Ответить | Цитировать Сообщить модератору
 Re: разрешение на sp_OACreate  [new]
iljy
Member

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

я вообще не это имел ввиду:) сделайте от имени админа хранимку как EXECUTE AS OWNER, в ней поставьте выбор курсов, и дайте на ее исполнение права всем юзерам.
22 июл 09, 15:10    [7445874]     Ответить | Цитировать Сообщить модератору
 Re: разрешение на sp_OACreate  [new]
Glory
Member

Откуда:
Сообщений: 104751
MasterZ
iljy
MasterZ,

сделайте ОДНУ хранимку от имени админа с EXECUTE AS, и дергайте ее из остальных.


Execute as login = 'admin'
		dbo.spDefaultRateFromWWW @codCurrency, @D1, @Res OUTPUT 

ругается ему не нравится синтаксис возле dbo, что ему нужно?

Ему нужно правильный синтаксис
22 июл 09, 15:13    [7445890]     Ответить | Цитировать Сообщить модератору
 Re: разрешение на sp_OACreate  [new]
MasterZ
Member

Откуда: Москва
Сообщений: 1145
Glory,

Ну, очень остроумный ответ... только абсолютно бесполезный, можно было бумагу не переводить.
22 июл 09, 15:16    [7445923]     Ответить | Цитировать Сообщить модератору
 Re: разрешение на sp_OACreate  [new]
Glory
Member

Откуда:
Сообщений: 104751
MasterZ
Glory,

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

А переводить чужое время вместо чтения хелпа стало быть можно ?
Или проще выдумывать синтаксис команды и потом, наивно хлопая глазками, вопрашать, да что же ему надо то ?
22 июл 09, 15:18    [7445950]     Ответить | Цитировать Сообщить модератору
 Re: разрешение на sp_OACreate  [new]
MasterZ
Member

Откуда: Москва
Сообщений: 1145
iljy
MasterZ,

я вообще не это имел ввиду:) сделайте от имени админа хранимку как EXECUTE AS OWNER, в ней поставьте выбор курсов, и дайте на ее исполнение права всем юзерам.



dbo.spDefaultRateFromWWW @codCurrency, @D1, @Res OUTPUT


Эта хранимка содержит sp_OACreate и поэтому пользователи ее не могут запустить. Я так понял, что ее нужно запустить от имени пользователя у которого есть права, как?
В справке вот что есть

USE AdventureWorks;
GO
EXECUTE ('CREATE TABLE Sales.SalesTable (SalesID int, SalesName varchar(10));')
AS USER = 'User1';
GO
и все...
22 июл 09, 15:21    [7445983]     Ответить | Цитировать Сообщить модератору
 Re: разрешение на sp_OACreate  [new]
iljy
Member

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

ну посмотрите вы уже хелп по CREATE PROCEDURE!
22 июл 09, 15:29    [7446056]     Ответить | Цитировать Сообщить модератору
 Re: разрешение на sp_OACreate  [new]
ererererer1
Guest
есть два возмножных пути сертификаты или execute as
здесь можете примеры посмотреть

http://www.sommarskog.se/grantperm.html
22 июл 09, 15:33    [7446086]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: разрешение на sp_OACreate  [new]
elBrujo
Member

Откуда:
Сообщений: 3
Конечно ответ, т. с. "немного" запоздалый, но всё же для полноты картины сабжа. На БД master, необходимо дать следующие разрешения пользователю (допустим "User"), от имени которого выполняется код
use master
grant exec on sp_OACreate to "User"
grant exec on sp_OAMethod to "User"
grant exec on sp_OADestroy to "User"

"User" должен быть прикручен к master.
18 фев 13, 16:22    [13943818]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить