Права доступа

syavik
Дата: 01.02.2013 11:25:42
Добрый день.
Пользователи sql тягают через вьюхи себе отчеты.
Для каждого пользователя созданы свои вьюхи с отличием в только в одном ID выборки, хочется избавится от их нагромождения.
Возможно ли прописать во вьюху - "такой-то пользователь может взять данные только с таким ID таблицы". Сильно не пинайте.
Заранее спасибо!






Microsoft SQL Server 2008 R2 (SP1) - 10.50.2500.0 (Intel X86)
Jun 17 2011 00:57:23
Copyright (c) Microsoft Corporation
Enterprise Edition on Windows NT 5.2 <X86> (Build 3790: Service Pack 2) (Hypervisor)
_ч_
Дата: 01.02.2013 11:30:59
syavik,

т.е. вы хотите сделать одну view для всех пользователей, а внутри нее разграничить доступ к строкам в таблице-таблицах?
syavik
Дата: 01.02.2013 11:36:23
_ч_,

Да, Вы абсолютно правильно меня поняли.
Glory
Дата: 01.02.2013 11:38:41
syavik
Возможно ли прописать во вьюху - "такой-то пользователь может взять данные только с таким ID таблицы". Сильно не пинайте.

Использовать фильтры
WHERE "если пользователь1, то ID =1, если пользователь2, то ID = 2"
syavik
Дата: 01.02.2013 12:02:05
Glory,

Спасибо за информацию. Если Вас не затруднит, можете более подробнее написать синтаксис?


create table #t (id int, data varchar (20))
insert into #t select 1,'value1'
insert into #t select 2,'value2'
insert into #t select 2,'value3'
select * from #t where...
Glory
Дата: 01.02.2013 12:10:24
Мда уж
WHERE (id=1 AND USER_NAME()='User1')
syavik
Дата: 01.02.2013 12:13:49
Glory,

Спасибо! Просто возникли почему-то мысли про "if"
Гость333
Дата: 01.02.2013 12:16:53
syavik
Дата: 01.02.2013 12:45:28
Гость333,

Спасибо, обязательно ознакомлюсь.