Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Люди помогите. Использование clr сборки, которая закачивает файл по uri  [new]
Игорь_UUS
Member

Откуда: г. Екатеринбург
Сообщений: 670
Добрый день.

При скачке файла, вываливается вот такая ошибка:

Произошла ошибка .NET Framework во время выполнения пользователем программы или агрегатной функции "IM_DownloadImage":
System.Security.SecurityException: Сбой при запросе разрешения типа: "System.Security.Permissions.SecurityPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089".
System.Security.SecurityException:
в System.Net.WebClient.DownloadDataInternal(Uri address, WebRequest& request)
в System.Net.WebClient.DownloadData(Uri address)
в HttpFunctions.DownloadImage(String imageUri)


Сделано:
ALTER ASSEMBLY [IM_DownloadImage] WITH PERMISSION_SET = EXTERNAL_ACCESS
и
ALTER DATABASE [M5] SET TRUSTWORTHY ON


Помогите, что может быть?
8 фев 18, 16:41    [21177272]     Ответить | Цитировать Сообщить модератору
 Re: Люди помогите. Использование clr сборки, которая закачивает файл по uri  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36968
https://www.google.ru/search?q=System.Security.SecurityException: Сбой при запросе разрешения типа:&oq=System.Security.SecurityException: Сбой при запросе разрешения типа:&aqs=chrome..69i57.3399j0j7&sourceid=chrome&ie=UTF-8
8 фев 18, 16:45    [21177290]     Ответить | Цитировать Сообщить модератору
 Re: Люди помогите. Использование clr сборки, которая закачивает файл по uri  [new]
Игорь_UUS
Member

Откуда: г. Екатеринбург
Сообщений: 670
Гавриленко Сергей Алексеевич,

Класс, конечно искал в инете информацию... только толку нет((
8 фев 18, 16:53    [21177318]     Ответить | Цитировать Сообщить модератору
 Re: Люди помогите. Использование clr сборки, которая закачивает файл по uri  [new]
Andy_OLAP
Member

Откуда: я знаю, что Хапоэль Беэр-Шева - чемпион
Сообщений: 3151
Игорь_UUS
Добрый день.

При скачке файла, вываливается вот такая ошибка:

Произошла ошибка .NET Framework во время выполнения пользователем программы или агрегатной функции "IM_DownloadImage":
System.Security.SecurityException: Сбой при запросе разрешения типа: "System.Security.Permissions.SecurityPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089".
System.Security.SecurityException:
в System.Net.WebClient.DownloadDataInternal(Uri address, WebRequest& request)
в System.Net.WebClient.DownloadData(Uri address)
в HttpFunctions.DownloadImage(String imageUri)


Сделано:
ALTER ASSEMBLY [IM_DownloadImage] WITH PERMISSION_SET = EXTERNAL_ACCESS
и
ALTER DATABASE [M5] SET TRUSTWORTHY ON


Помогите, что может быть?

Сборку нужно таки ручками регистрировать.
И вообще отвыкайте от CLR.
На ровное месте может отвалиться то, что еще работало в 2008R2.
"...Sometimes a library is changed from pure MSIL to mixed-mode (i.e. it contains both managed and unmanaged code), and SQL only allows for pure MSIL libraries. The ServiceModel library (an unsupported library), prior to .NET 4.0, was pure MSIL and so people imported it into SQL Server 2005, 2008, and 2008 R2 to do Web Service calls. Starting in .NET 4.0 it was changed to mixed-mode and could no longer be imported. Any project using it successfully on 2005, 2008, or 2008 R2 that wanted to upgrade to 2012 (or newer) had to be rewritten to not use ServiceModel.
Some of the actions that can be performed via supported libraries require EXTERNAL_ACCESS so that they can go outside of SQL Server to the file system, or to the network, etc. Some actions require UNSAFE due to the type of operations (updating static variables, etc) or being marked with a Host Protection Attribute (there are many different attributes that are for different reasons for requiring UNSAFE)..." - почитайте вдумчиво,
8 фев 18, 17:28    [21177471]     Ответить | Цитировать Сообщить модератору
 Re: Люди помогите. Использование clr сборки, которая закачивает файл по uri  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7754
Игорь_UUS,

не делайте так, напишите слой приложения, который будет загружать в базу результат HTTP запроса.
8 фев 18, 18:20    [21177695]     Ответить | Цитировать Сообщить модератору
 Re: Люди помогите. Использование clr сборки, которая закачивает файл по uri  [new]
Игорь_UUS
Member

Откуда: г. Екатеринбург
Сообщений: 670
Andy_OLAP,

Я правильно понимаю, у MSSQL нет прав к файловой системе Windows? Которая необходима для работы WEB компоненты (сборки)?
9 фев 18, 07:46    [21178729]     Ответить | Цитировать Сообщить модератору
 Re: Люди помогите. Использование clr сборки, которая закачивает файл по uri  [new]
Игорь_UUS
Member

Откуда: г. Екатеринбург
Сообщений: 670
Andy_OLAP
Игорь_UUS
Добрый день.

При скачке файла, вываливается вот такая ошибка:

Произошла ошибка .NET Framework во время выполнения пользователем программы или агрегатной функции "IM_DownloadImage":
System.Security.SecurityException: Сбой при запросе разрешения типа: "System.Security.Permissions.SecurityPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089".
System.Security.SecurityException:
в System.Net.WebClient.DownloadDataInternal(Uri address, WebRequest& request)
в System.Net.WebClient.DownloadData(Uri address)
в HttpFunctions.DownloadImage(String imageUri)


Сделано:
ALTER ASSEMBLY [IM_DownloadImage] WITH PERMISSION_SET = EXTERNAL_ACCESS
и
ALTER DATABASE [M5] SET TRUSTWORTHY ON


Помогите, что может быть?

Сборку нужно таки ручками регистрировать.
И вообще отвыкайте от CLR.
На ровное месте может отвалиться то, что еще работало в 2008R2.
"...Sometimes a library is changed from pure MSIL to mixed-mode (i.e. it contains both managed and unmanaged code), and SQL only allows for pure MSIL libraries. The ServiceModel library (an unsupported library), prior to .NET 4.0, was pure MSIL and so people imported it into SQL Server 2005, 2008, and 2008 R2 to do Web Service calls. Starting in .NET 4.0 it was changed to mixed-mode and could no longer be imported. Any project using it successfully on 2005, 2008, or 2008 R2 that wanted to upgrade to 2012 (or newer) had to be rewritten to not use ServiceModel.
Some of the actions that can be performed via supported libraries require EXTERNAL_ACCESS so that they can go outside of SQL Server to the file system, or to the network, etc. Some actions require UNSAFE due to the type of operations (updating static variables, etc) or being marked with a Host Protection Attribute (there are many different attributes that are for different reasons for requiring UNSAFE)..." - почитайте вдумчиво,


Пересоздал clr сборку на "месте". Указав и CREATE ASSEMBLY [IM_DownloadImage] WITH PERMISSION_SET = EXTERNAL_ACCESS
и
ALTER DATABASE [M5] SET TRUSTWORTHY ON

Не помогает! И никаких ошибок при сборке(((
Что можете ещё посоветовать?
9 фев 18, 08:07    [21178741]     Ответить | Цитировать Сообщить модератору
 Re: Люди помогите. Использование clr сборки, которая закачивает файл по uri  [new]
felix_ff
Member

Откуда: Moscow
Сообщений: 1364
Игорь_UUS,

Попробуйте создать с permission_set = unsafe
9 фев 18, 10:00    [21178909]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить