Насколько безопасно encryption хранимых процедур SQL Server?

Задний план

Я использую SQL Server 2008 Enterprise на Windows Server 2003 Enterprise. Я разработал некоторые stored procedures для SQL Server, и машина, установленная с SQL Server, может не полностью находиться под моим контролем (может использоваться недоверенным сторонним лицом).

Вопрос

Я хочу защитить исходный код хранимых процедур T-SQL (т. Е. Не просматривать какой-либо другой стороной), используя функцию хранимой процедуры шифрования, предоставляемую SQL Server. Я не уверен, безопасна ли зашифрованная хранимая процедура и есть ли у администратора компьютера (установленного с SQL Server) способы просмотра исходного кода хранимой процедуры?

Можно расшифровать и просмотреть источник зашифрованных хранимых процедур SQL, быстрый search «Дешифровать хранимую процедуру sql» показывает вам большое количество обращений, например:

http://www.mssqltips.com/tip.asp?tip=1046

Однако encryption вашей хранимой процедуры, по крайней мере, затрудняет просмотр источника – я также не уверен, действительно ли какой-либо из существующих методов дешифрования хранимых процедур является жизнеспособным при установке Live SQL Server – в прошлый раз я искал много методов исkeyительный доступ к экземпляру SQL-serverа и предотrotation доступа других пользователей к serverу (хотя это может и не быть правдой).

Также стоит отметить, что encryption вашей хранимой процедуры может привести к головным болям поддержки – поскольку вы больше не можете viewеть планы выполнения для зашифрованных хранимых процедур, у вас могут возникнуть проблемы с попыткой диагностики любых проблем с performanceю.

Я не знаю другого метода защиты вашего источника.

Чтобы уточнить ответ marc_s (удалено сейчас)

Для SQL Server 2005 и выше пороговое значение для получения «обычного textа» выше, чем раньше. В принципе, системный администратор над ЦАП. На данный момент, вы уже выложены в любом случае.

Для SQL Server 2000 и ранее это было намного проще. Жесткий взгляд, откровенно говоря, сделал эту работу.

Таким образом, это безопасно для конечных пользователей и разработчиков (без sysadmin), но не для того, чтобы использовать его для защиты IP-адресов на websiteе клиента.

«Я хотел бы упаковать приложение базы данных в форме, которая позволит клиенту использовать его, но без него, когда он сможет get доступ к фактическим данным, хранящимся в нем. Я думаю, что encryption базы данных должно помочь».

ответ аналогичен: то, что вы просите, называется Digital Rights Management, а SQL Server не поддерживает DRM. Этот ответ применяется независимо от того, ссылаетесь ли вы на данные, на схему схемы или на логику хранимых процедур. См. Кому нужно encryption? для более подробного обсуждения.

  • Могу ли я установить горячий резервный экземпляр PostgreSQL на том же serverе?
  • Невозможно запланировать выполнение задачи под учетной записью пользователя домена, отличной от текущего пользователя
  • Как установить пароль postgresql в pgpass.conf для учетной записи администратора в Windows Server 2008?
  • IIS7 Windows Server 2008 Добавить ролевые стойки
  • Активация Windows в Amazon EC2
  • IIS возвращает простой запрещенный ответ. Нет HTTP-кода
  • Добавить запись DNS в зону, которую я не администрирую
  • Помощь для новичков - Домены / Субдомены
  • ОШИБКА База данных безопасности на serverе не имеет учетной записи компьютера для этой доверенной связи рабочей станции
  • Сетевые ресурсы не работают с клиентами NT 5.x
  • Есть ли какие-либо хорошие инструменты или передовые methods для перехода от стандарта serverа 2008 к serverу 2012 года?
  • Давайте будем гением компьютера.