从MS Dynamics CRM 2013 Online Plug-in使用外部Web服务

时间:2015-01-08 14:52:02

标签: web-services crm dynamics-crm-2013 microsoft-dynamics dynamics-crm-online

我在CRM 2013 Online(沙盒)插件中使用外部Web服务时遇到一些问题,我的问题在于" EnvironmentSecurity"。我试着用一个控制台做同样的事情,一切运行正常......我称之为web服务:

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.

1 个答案:

答案 0 :(得分:2)

我担心,您无法使用在沙盒中注册的插件调用本地服务(托管在本地服务器中)。相反,请使用需要DNS名称解析的命名Web地址来托管服务。

以下Web访问限制适用于此沙箱功能。

  1. 仅允许使用HTTP和HTTPS协议。
  2. 不允许访问localhost(环回)。
  3. 无法使用IP地址。您必须使用需要DNS名称解析的命名Web地址。
  4. 支持并建议使用匿名身份验证。没有提示提示已登录用户提供凭据或保存这些凭据。
  5. 您可以使用有效的网站地址在Azure / Web服务器中托管您的服务。

    有关详细信息,请访问此link