|
Ограничение на выборку данных SQL
| ☑ |
0
Случайный прохожий
21.03.14
✎
14:53
|
Добрый день.
Есть сервер. На нем стоит SQL server 2012.
Пользователи получают с него данные посредством SQL-запросов. Запросы могут быть любые, поскольку клиентское ПО с открытым кодом. Пользователи к базе подключаются каждый под своим логином и паролем. Вопрос: можно ли пользователю ограничить доступ к данным на уровне записей? Например, если он обращается с выборкой ко всей таблице, а вернуть ему не всю таблицу, а только строки, отобранные по некоему условию?
|
|
1
Speshuric
21.03.14
✎
15:06
|
(0) Таблицы заменить на представления с instead триггерами. Таблицы скрыть от всех, кроме владельца БД, права на DDL отобрать.
|
|
2
Случайный прохожий
21.03.14
✎
15:12
|
(1) Как я понял штатных средств нет?) У клиентов ПО с открытым кодом, а там SQL-запросы. Не dll.
|
|
3
ДенисЧ
21.03.14
✎
15:14
|
(2) Штатное средство - это как раз представления
|
|
4
ShoGUN
21.03.14
✎
15:14
|
(2) В (1) описаны штатные средства.
|
|
5
Speshuric
21.03.14
✎
17:03
|
(2) Пусть хоть открытый код, хоть закрытый. Если пользователь не видит таблицу, а видит представление, которое ведёт себя как таблица, но возвращает ограниченные данные, то этот пользователь может придумывать любые запросы - они не помогут ему получить недоступные данные.
Но, конечно, если пользователь обладает неограниченными полномочиями на сервере, то "от админа защиты нет".
|
|
6
Господин ПЖ
21.03.14
✎
17:24
|
(0) доступ сторонних программ на выборку непосредственно к таблицам не есть хорошо... в лучших домах Парижу делают нужные view
|
|