powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Права доступа к таблицам из хранимой процедуры
10 сообщений из 10, страница 1 из 1
Права доступа к таблицам из хранимой процедуры
    #32021819
Иван
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Имеется таблица tableX и хранимая процедура xxx. У пользователя есть доступ к процедуре, но нет к таблице. Вопрос: почему команда "exec (@xyz)" не выполнится с ошибкой. что доступ запрещен к таблице tableX, а SELECT к этой же таблице выполняется

CREATE PROCEDURE xxx
AS
BEGIN
select * from tableX

declare @xyz varchar(100)
set @xyz=' select * from tableX'
exec (@xyz)
END
GO
...
Рейтинг: 0 / 0
Права доступа к таблицам из хранимой процедуры
    #32021822
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Потому что exec() выполняется с правами пользователя, запустившего процедуру, а все другое в процедуре - с правами dbowner
...
Рейтинг: 0 / 0
Права доступа к таблицам из хранимой процедуры
    #32021825
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>а все другое в процедуре - с правами dbowner
С правами владельца процедуры
...
Рейтинг: 0 / 0
Права доступа к таблицам из хранимой процедуры
    #32021837
Иван
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
И как от этого избавиться не давая пользователю доступа к таблице?
...
Рейтинг: 0 / 0
Права доступа к таблицам из хранимой процедуры
    #32021849
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не использовать динамические запросы
...
Рейтинг: 0 / 0
Права доступа к таблицам из хранимой процедуры
    #32021947
Иван
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Именно динамический запрос и нужен, может кто подскажет как можно решить данный вопрос?
...
Рейтинг: 0 / 0
Права доступа к таблицам из хранимой процедуры
    #32021954
Фотография SergSuper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На 90% уверен что Вам не нужен динамический запрос.
Я за 7 лет его использовал лишь для вычисления строк.
Допустим в поле написано "22+33", а надо получить 55.
...
Рейтинг: 0 / 0
Права доступа к таблицам из хранимой процедуры
    #32021958
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Присоединяюсь к SergSuper
Придется выбирать: либо динамический запрос и права на таблицу, либо явный запрос

Вот тут я уже как-то распинался на эту тему, можете взглянуть
http://www.sql.ru/cgi-bin/UltraBoard/UltraBoard.pl?Action=ShowPost&Board=mssql&Post=3556&Idle=365&Sort=0&Order=Descend&Page=0
...
Рейтинг: 0 / 0
Права доступа к таблицам из хранимой процедуры
    #32022123
Иван
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо. Придется жертвовать производительностью поиска в БД.
...
Рейтинг: 0 / 0
Права доступа к таблицам из хранимой процедуры
    #32022547
Alex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуй сам контролировать права пользователя:
IF PERMISSIONS(OBJECT_ID('TableX'))&1=1
PRINT 'The current user can select data from TableX.'
ELSE
PRINT 'ERROR: The current user cannot select data from TableX.'
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Права доступа к таблицам из хранимой процедуры
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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