Исключение CLR UDF В SQL Server 2005
-
03-07-2019 - |
Вопрос
Когда я пробую свой CLR UDF, я получаю эту ошибку:
Сообщение 6522, Уровень 16, Состояние 1, Строка 1
Ошибка .NET Framework произошла во время выполнения определяемой пользователем процедуры или агрегата "GetFileSize":
Система.Безопасность.Исключение SecurityException:Запрос на получение разрешения системы type '.Безопасность.Разрешения.Сбой при передаче файла, mscorlib, версия = 2.0.0.0, Культура = нейтральная, PublicKeyToken=b77a5c561934e089'.
Система.Безопасность.Исключение SecurityException:
в системе.Безопасность.CodeAccessSecurityEngine.Проверка (Запрос объекта, StackCrawlMark & stackMark, логический набор параметров)
в системе.Безопасность.Доступ к коду разрешен.Требовать ()
в System.IO.DirectoryInfo..ctor(путь к строке)
в GetFileInfo.ShowDirectoryName.Размер файла (SqlString dir).
Есть какие-нибудь идеи о том, как это решить?Я пытался провести некоторое время в Боле, но сейчас моя спина действительно прижата к стене...
Спасибо.
Решение
SQLCLR накладывает определенные ограничения на то, что может делать ваша сборка, используя безопасность доступа к коду.
Ознакомьтесь с различными наборами разрешений в SQL: