защитить хранимую процедуру от запрета определения вида - PullRequest
0 голосов
/ 13 апреля 2011

Достаточно ли для защиты кода хранимой процедуры, если пользователь имеет DENY VIEW ANY DATABASE DENY VIEW ANY DEFINITION

Пользователю предоставляется только execute sp. Возможно ли ему отследить или как-то увидеть код? Я не мог соединиться под этим логином с профилировщиком, но, возможно, есть и другие доступные способы

1 Ответ

3 голосов
/ 13 апреля 2011

Непонятно, какова ваша цель: пытаетесь ли вы защитить интеллектуальную собственность;запретить пользователям видеть конфиденциальную информацию в исходном коде (например, пароли);запретить пользователям изменять сами процедуры или что-то еще?Являются ли ваши пользователи внутренними пользователями в вашей собственной компании или они являются внешними клиентами?Размещают ли они базу данных и приложение или вы?

Для защиты интеллектуальной собственности:

  • Подписывают ли ваши пользователи (клиенты?) Соглашение о неразглашении или договор, в котором указаны ваши условияи включает штрафы за разглашение вашей интеллектуальной собственности
  • Перемещение конфиденциальной информации в службу, которую вы размещаете, и предоставление в качестве веб-службы

Чтобы пользователи не видели исходный код:

  • СОЗДАНИЕ ПРОЦЕДУРЫ С ШИФРОВАНИЕМ - это только мешает «нормальным» пользователям видеть код, оно не остановит определенного пользователя с разрешениями sysadmin
  • Написать процедуру CLR в .NET вместо использования TSQL
  • Перемещение конфиденциальной информации в скомпилированное клиентское приложение
  • Перемещение конфиденциальной информации в службу, которую вы размещаете, и предоставление в качестве веб-службы

Для предотвращения ALTERing пользователейпроцедуры:

  • Не предоставляйте им необходимые разрешения

В гоВ конце концов, определенный пользователь с разрешениями sysadmin всегда будет перепроектировать, отлаживать, декомпилировать или иным образом раскрывать логику в вашем коде.Поэтому вам необходимо четко понимать, что именно вы пытаетесь предотвратить, какое потенциальное влияние это окажет на вас или вашу компанию, и сколько времени и денег вы готовы инвестировать в его предотвращение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...