我正在开发一个Web应用程序来访问Exchange Server 2010以从服务器获取电子邮件。问题是,我们没有此服务器的域名。我所知道的是它的IP地址。是否可以使用Exchange Web服务访问服务器?这是我的代码:
ExchangeService服务=新的ExchangeService(ExchangeVersion.Exchange2010); service.Credentials = new NetworkCredential(“StevenZack”,“123456”,“208.243.49.20”); //service.AutodiscoverUrl("stevenzack@mail2.local“); service.Url = new Uri(“https://208.243.49.20/EWS/Exchange.asmx”); FindItemsResults findResults = service.FindItems( WellKnownFolderName.Inbox, 新的ItemView(10));
foreach (Item item in findResults.Items)
{
div_email.InnerHtml = item.Subject + "<br />";
}
出现错误“远程证书根据验证程序无效”
如何应对这种情况?任何的想法?谢谢你的时间!
答案 0 :(得分:1)
通过设置ServicePointManager.ServerCertificateValidationCallback委托可以避免SSL警告(请参阅http://www.infinitec.de/post/2008/11/26/ExchangeWebServices-WebDAV-and-untrusted-server-certificates.aspx)。
但这可能对你没有帮助。如果指定208.243.49.20,则使用计算机本地帐户而不是域帐户连接到计算机。
您是否可以使用集成身份验证?您可以冒充用户并直接使用他的凭证。这样,用户不必再次输入他的凭证。请注意,如果Web应用程序与Exchange服务器位于不同的服务器上,则需要配置Kerberos。