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

Откуда:
Сообщений: 336
Есть большая таблица:
create table [MyTable]
(
    [id] bigint identity(1,1)
   ,[Param] varchar(50)
   ,[Value] varchar(50)
)


я не хочу давать пользовательской роли [MyRole] разрешение на select, чтоб избежать слива данных, но хочу разрешить select на представление:
create view [MyView]
as
select top 1000
    [Param]
   ,[Value]
from [MyTable]

чтоб пользователь мог сам отбирать данные по своим условиям, но в пределах 1000 записей.

Как это сделать?
3 июн 16, 18:40    [19256407]     Ответить | Цитировать Сообщить модератору
 Re: разрешить представление, запретить таблицу  [new]
WarAnt
Member

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

использовать процедуру и дать разрешение на execute
3 июн 16, 18:51    [19256421]     Ответить | Цитировать Сообщить модератору
 Re: разрешить представление, запретить таблицу  [new]
=Сергей=
Member

Откуда:
Сообщений: 336
WarAnt, а если мне нужно именно представление?
3 июн 16, 18:55    [19256431]     Ответить | Цитировать Сообщить модератору
 Re: разрешить представление, запретить таблицу  [new]
Relic Hunter
Member

Откуда: AB
Сообщений: 7677
=Сергей=
я не хочу давать пользовательской роли [MyRole] разрешение на select, чтоб избежать слива данных, но хочу разрешить select на представление
REVOKE / GRANT
3 июн 16, 19:00    [19256453]     Ответить | Цитировать Сообщить модератору
 Re: разрешить представление, запретить таблицу  [new]
aleks2
Guest
=Сергей=
WarAnt, а если мне нужно именно представление?

with VIEW_METADATA


ЗЫ. А если почитать RTFM - фсе станет еще проще.
3 июн 16, 19:40    [19256554]     Ответить | Цитировать Сообщить модератору
 Re: разрешить представление, запретить таблицу  [new]
invm
Member

Откуда: Москва
Сообщений: 9913
=Сергей=
Как это сделать?
Выдать deny на таблицу и select на представление.
Таблица и представление должны иметь одного владельца.

ЗЫ: Читать про "цепочки владения".
3 июн 16, 19:59    [19256590]     Ответить | Цитировать Сообщить модератору
 Re: разрешить представление, запретить таблицу  [new]
Mind
Member

Откуда: Лучший город на Земле
Сообщений: 2322
invm
=Сергей=
Как это сделать?
Выдать deny на таблицу и select на представление.
Таблица и представление должны иметь одного владельца.

ЗЫ: Читать про "цепочки владения".
Не будет же это работать так как надо ТС.
6 июн 16, 22:12    [19265068]     Ответить | Цитировать Сообщить модератору
 Re: разрешить представление, запретить таблицу  [new]
invm
Member

Откуда: Москва
Сообщений: 9913
Mind
Не будет же это работать так как надо ТС.
Перечитал хотелку ТС'а внимательнее - да, такое представлением и разрешениями нереализуемо.
6 июн 16, 22:55    [19265154]     Ответить | Цитировать Сообщить модератору
 Re: разрешить представление, запретить таблицу  [new]
Владислав Колосов
Member

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

а что не так? Представление должно находиться в другой схеме, владелец общий со схемой таблицы.
6 июн 16, 23:13    [19265189]     Ответить | Цитировать Сообщить модератору
 Re: разрешить представление, запретить таблицу  [new]
invm
Member

Откуда: Москва
Сообщений: 9913
Владислав Колосов
а что не так?

=Сергей=
чтоб пользователь мог сам отбирать данные по своим условиям, но в пределах 1000 записей.

Если трактовать как "отбирать по своим условиям, но не более 1000 записей" - не реализуемо.
А если как "отбирать по своим условиям из 1000 записей" - реализуемо.
6 июн 16, 23:28    [19265232]     Ответить | Цитировать Сообщить модератору
 Re: разрешить представление, запретить таблицу  [new]
Mind
Member

Откуда: Лучший город на Земле
Сообщений: 2322
=Сергей= похоже летающий велосипед изобретает. То преселекты какие-то, то view, такое чтобы top применялся автоматически к запросу к этому VIEW.
7 июн 16, 01:54    [19265341]     Ответить | Цитировать Сообщить модератору
 Re: разрешить представление, запретить таблицу  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 9169
Тогда табличная функция.
7 июн 16, 11:40    [19266334]     Ответить | Цитировать Сообщить модератору
 Re: разрешить представление, запретить таблицу  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 32174
Владислав Колосов
Тогда табличная функция.
Она будет так же работать, как view, точнее, так же не работать.
7 июн 16, 14:29    [19267254]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить