Невозможно загрузить с сайта HTTPS с помощью Assembly.LoadFrom - PullRequest
0 голосов
/ 27 апреля 2009

Невозможно использовать HTTPS-путь в Assembly.LoadFrom.

Пробовал использовать класс TrustAllCertificatePolicy, но он не работал.

Я дал полное доверие серверу, используя caspol с клиентского компьютера. Этот же URL работает с отключенным ssl. Это не работает для SSL включен. пожалуйста, помогите.

Исключение составляет:

System.IO.FileLoadException: Security problem encountered when connecting to URL for 'https://ip/tasks/tasks.dll'. File name: 'https://ip/tasks/tasks.dll'    
at System.Reflection.Assembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity,
     Assembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection)    
at System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef, Evidence assemblySecurity, 
    StackCrawlMark& stackMark, Boolean forIntrospection)    
at System.Reflection.Assembly.InternalLoadFrom(String assemblyFile, Evidence securityEvidence, 
    Byte[] hashValue, AssemblyHashAlgorithm hashAlgorithm, Boolean forIntrospection, StackCrawlMark& stackMark)    
at System.Reflection.Assembly.LoadFrom(String assemblyFile, Evidence securityEvidence)    
    WRN: Assembly binding logging is turned OFF. To enable assembly bind failure logging, set the registry value 
    [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1. Note: There is some performance penalty associated 
    with assembly bind failure logging. To turn this feature off, remove the registry value 
    [HKLM\Software\Microsoft\Fusion!EnableLog]. 

1 Ответ

0 голосов
/ 27 апреля 2009

Code Access Security заблокирует выполнение кода из мест http и https в обычном режиме (доступ с полными правами).

Вам нужно будет создать новый домен приложений (и, возможно, типы, которые можно перемещать / сериализовать, чтобы охватить границу домена приложения), с настройками CAS в домене приложений для работы с набором разрешений Интернета. Это предотвратит изменение загруженного кода на локальном компьютере.

Конечно, вы можете создать собственный набор разрешений, чтобы предоставить больший доступ, если вы действительно доверяете удаленному коду (и всем, кто может или сможет его изменить).

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