Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Подмена системы прав доступа SQL Server  [new]
dropin
Guest
Есть ли красивое решение для этой проблемы?
Допустим пользователь всегда коннектится на сервер с логином "ordinaryuser" и в дальнейшем у него процедура AutorizationProc запрашивает логин и пароль для доступа к таблицам. Сверяет с таблицей логинов и дает разные доступы к данным в зависимости от прав.
У меня есть идея создавать временные таблицы #Level1, #Level2, ... и во всех процедурах проверять какой уровень прав подключения.
Но как то некрасиво...
20 янв 03, 17:40    [110315]     Ответить | Цитировать Сообщить модератору
 Re: Подмена системы прав доступа SQL Server  [new]
Glory
Member

Откуда:
Сообщений: 104760
А вы уверены, что встроенная система прав вас не устраивает ?
По-моему то, про что вы говорите, можно настроить с помощью пользовательских ролей.
20 янв 03, 19:00    [110427]     Ответить | Цитировать Сообщить модератору
 Re: Подмена системы прав доступа SQL Server  [new]
Белов Владимир
Member

Откуда: Москва
Сообщений: 1716
А может попробовать сделать "классическую" схему

Объекты - таблица1
Пользователи - таблица2
Ключ объекта, ключ пользователя - таблица3
20 янв 03, 21:00    [110478]     Ответить | Цитировать Сообщить модератору
 Re: Подмена системы прав доступа SQL Server  [new]
Сергей Тихонов
Member

Откуда: Киев
Сообщений: 787
Иногда нужно разграничивать права на записи таблицы. Причем динамически (разные права, разные пользователи). Тут MSSQL ничем не поможет, нужно писать свою систему авторизации...
20 янв 03, 21:40    [110498]     Ответить | Цитировать Сообщить модератору
 Re: Подмена системы прав доступа SQL Server  [new]
dropin
Guest
А как это на веб сайтах решается?
Пришел на сайт, зарегистрировался как обычный пользователь, получил доступ к данным.
Пришел на сайт пользователь с правами администратора, залогинился, поработал как админ.
Ведь изначально они все поключаются с одинаковыми правами, вводят свои данные и получают разные права. Неужели там происходит переподключение к серверу?
21 янв 03, 06:01    [110580]     Ответить | Цитировать Сообщить модератору
 Re: Подмена системы прав доступа SQL Server  [new]
Белов Владимир
Member

Откуда: Москва
Сообщений: 1716
С чего Вы взяли что они подключаются к серверу под одними правами ?
У каждого есть свой логин, пароль - вот эти разрешения и раздаются на уровне логина.
21 янв 03, 09:10    [110615]     Ответить | Цитировать Сообщить модератору
 Re: Подмена системы прав доступа SQL Server  [new]
kreek
Member

Откуда:
Сообщений: 72
Так сказать "контролировать везде, где толкь возможно"
1. Веб сервер определяет кому какие страницы доступны (админу - свои, пользователям - свои).
2. На одной и той же странице функционал с разным уровнем доступа (на веб сервере проверяется статус законнектившегося, если, допустим, он админ - то ему можно вызывать эту функцию)
3. Пользователи логинятся к серверу БД под одним логином, а админ под другим (если даже "не админ" получил доступ к админским страницам или функционалу, при логине к серверу БД он должен входить не как админ, соотвественно у него не будет прав на выполнение несанкционированных действий).
Лень "ИМХО" писать везде.
21 янв 03, 09:27    [110628]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить