Использование внешнего веб-сервиса из онлайн-плагина MS Dynamics CRM 2013

У меня есть некоторые проблемы с использованием внешнего веб-сервиса из подключаемого модуля CRM 2013 Online (песочница), моя проблема связана с «EnvironmentSecurity». Я пытаюсь сделать то же самое с помощью консоли, и все работает нормально... Я вызываю веб-сервис следующим образом:

NetworkCredential myCred = new NetworkCredential();
myCred.Domain = "dom";
myCred.UserName = "user";
myCred.Password = "pass";
CredentialCache credsCache = new CredentialCache();

credsCache.Add(new Uri(webAddress), "Basic", myCred);
HttpWebRequest http = (HttpWebRequest)HttpWebRequest.Create(webAddress);
http.PreAuthenticate = false;

http.UseDefaultCredentials = true;
HttpWebResponse response2 = (HttpWebResponse )http.GetResponse();

Ошибка такова:

System.Security.SecurityException: Request for the permission of type
'System.Security.Permissions.EnvironmentPermission, mscorlib, Version=4.0.0.0, 
 Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.

person Alexis    schedule 08.01.2015    source источник
comment
Не могли бы вы поделиться полным URI, который вы пытаетесь вызвать, а также типом метода   -  person Mani    schedule 08.01.2015
comment
Да, это myServer.com:9999/CustomWS/Account.asmx /' Я не могу показать вам настоящий URL, извините из соображений безопасности, :S thx!!   -  person Alexis    schedule 09.01.2015


Ответы (1)


Боюсь, вы не можете позвонить в локальные службы (размещенные на вашем локальном сервере) с плагином, зарегистрированным в песочнице. Вместо этого разместите службу с именованным веб-адресом, для которого требуется разрешение имени DNS.

К этой возможности песочницы применяются следующие ограничения веб-доступа.

  1. Разрешены только протоколы HTTP и HTTPS.
  2. Доступ к локальному хосту (петля) не разрешен.
  3. IP-адреса использовать нельзя. Вы должны использовать именованный веб-адрес, который требует разрешения имени DNS.
  4. Анонимная аутентификация поддерживается и рекомендуется. Нет возможности запрашивать у вошедшего в систему пользователя учетные данные или сохранять эти учетные данные.

Вы можете разместить свою службу в Azure/веб-сервере с действительным адресом веб-сайта.

Для получения дополнительной информации перейдите по этой ссылке.

person Mani    schedule 09.01.2015