Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Помогите люди добрые  [new]
Wirg
Guest
Задали такую задачку. Подскажите может есть код на Microsoft SQL Server подобного или как это организовать при помощи SQL, транзактов и т.п.



Для БД Books организовать защиту записей на уровне записей. Это значит, что для каждой записи можно определить, кто имеет к ней доступ, а кто нет. И БД соответственно контролирует доступ к этим данным. Предполагается, что доступ к БД осуществляется через логические объекты иные, чем таблица.
3 май 05, 15:42    [1513666]     Ответить | Цитировать Сообщить модератору
 Re: Помогите люди добрые  [new]
aleks2
Guest
Wirg
Задали такую задачку. Подскажите может есть код на Microsoft SQL Server подобного или как это организовать при помощи SQL, транзактов и т.п.



Для БД Books организовать защиту записей на уровне записей. Это значит, что для каждой записи можно определить, кто имеет к ней доступ, а кто нет. И БД соответственно контролирует доступ к этим данным. Предполагается, что доступ к БД осуществляется через логические объекты иные, чем таблица.


[Access Control List]
rowID int, userID int, accessMask int, UNIQUE(rowID, userID)

View
as
Select T.*, ACL.accessMask FROM
[Access Control List] ACL INNER JOIN Table T ON ACL.rowID=T.ID
WHERE ACL.userID=USER_ID()

+INSTEAD триггер на View для контроля операции по accessMask
3 май 05, 15:54    [1513715]     Ответить | Цитировать Сообщить модератору
 Re: Помогите люди добрые  [new]
StalkerS
Member

Откуда: Nowhere
Сообщений: 1343
еще через хранимые процедуры можно
3 май 05, 17:45    [1514156]     Ответить | Цитировать Сообщить модератору
 Re: Помогите люди добрые  [new]
wirg
Guest
А как через хранимые процедуры?
4 май 05, 08:50    [1514859]     Ответить | Цитировать Сообщить модератору
 Re: Помогите люди добрые  [new]
злой программер
Member

Откуда:
Сообщений: 226
wirg
А как через хранимые процедуры?

Пишешь хранимые процедуры для всех необходимых действий с базой. Запрещаешь непосредственный доступ к таблицам и раздаешь права на вызов ХП.
4 май 05, 10:26    [1515112]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить