2008-11-07 4 views
2

У нас есть внутреннее приложение, которое использует учетную запись службы, а мелкомасштабное управление таблицей и полем контролируется таблиц разрешений в приложении.Есть ли способ использовать сквозную защиту Active Directory для SQL Server 2005 и запретить типы подключений, такие как ODBC

Если мы хотим использовать сквозную защиту с Active Directory, у нас возникает проблема в том, что пользователь с доступом odbc может изменять таблицы за пределами бизнес-правил, существующих в приложении.

Есть ли способ включить сквозную защиту, но отключить доступ odbc.

ответ

1

Вы можете использовать хранимые процедуры и предоставлять права на хранимые процедуры, гарантируя, что основные бизнес-правила не могут быть нарушены (если они просты и неизменны, они могут идти в SP) или, по крайней мере (если они сложны или меняются, они не очень хорошо работают в SP), все изменения должны пройти через хранимые процедуры. Если они делают ODBC-соединение с базой данных, они могут выполнять сохраненные procs для внесения изменений, но если вы предоставляете права на выбор только для таблиц или представлений, то они не могут сделать это через таблицу ссылок Access, например.

+0

Вы уверены, что им не нужно вставлять/обновлять/удалять по таблице, чтобы влиять на строки в этой таблице через хранимую процедуру? – Rick

+0

Да, EXEC в хранимой процедуре - все, что им нужно (если вы не работаете с таблицами других баз данных и не блокируете цепочку базы данных). Вот почему EXEC на SP дает вам намного больше контроля, чем контроль на уровне столбцов на представлениях или таблицах. –

0

Триггеры входа в систему могут быть возможны, если это SQL 2005 +.

  • Используйте HOST_ ИМЯ или APP_NAME, чтобы ограничить круг лиц, подключение к серверу или приложению
  • Используйте sys.dm_ exec_ сеансов, чтобы проверить «client_ interface_name»

 Смежные вопросы

  • Нет связанных вопросов^_^