Exchange 2016 创建日程,远程服务器返回错误: (401) 未经授权

时间:2022-08-11 22:25:50

背景:在测试环境中一切正常,使用的是Exchange2013,上生产环境Exchange2016,部署后产生如下错误:

Microsoft.Exchange.WebServices.Data.ServiceRequestException: The request failed. 远程服务器
返回错误: (401) 未经授权。 ---\u003e System.Net.WebException: 远程服务器返回错误: (401) 未经授权。\r\n 在

System.Net.HttpWebRequest.GetResponse()\r\n 在

Microsoft.Exchange.WebServices.Data.EwsHttpWebRequest.Microsoft.Exchange.WebServices.Data.IEwsHttpWebRequest.GetResponse

()\r\n 在 Microsoft.Exchange.WebServices.Data.ServiceRequestBase.GetEwsHttpWebResponse(IEwsHttpWebRequest request)\r\n

--- 内部异常堆栈跟踪的结尾 ---\r\n 在 Microsoft.Exchange.WebServices.Data.ServiceRequestBase.GetEwsHttpWebResponse

(IEwsHttpWebRequest request)\r\n 在 Microsoft.Exchange.WebServices.Data.ServiceRequestBase.ValidateAndEmitRequest

(IEwsHttpWebRequest\u0026 request)\r\n 在 Microsoft.Exchange.WebServices.Data.MultiResponseServiceRequest`1.Execute()\r\n

在 Microsoft.Exchange.WebServices.Data.ExchangeService.FindAppointments(FolderId parentFolderId, CalendarView

calendarView)\r\n 在 CalendarUC.Code.ExChangeDAL.DeleteRecurringItemS(String UserName, String Password, DateTime

StartDate, DateTime EndDate)"}

产生以上错误,一般原因是查看日程的账号有问题,问题解决方法:

ExchangeCalendarAdminAccount与ExchangeAdminAccount合并了,为同一个账号。

<!--创建Exchange 账号的管理员账号,密码是管理的默认密码-->
<add key="ExchangeAdminAccount" value="mapp@tedaedu.cn"/>
<!--创建Exchange 日历的管理员账号,密码是管理的默认密码CalendarAdmin-->
<add key="ExchangeCalendarAdminAccount" value="mapp@tedaedu.cn"/>

但如上配置还是报错,错误提示:”该帐户无权模拟所请求的用户“,到这里离成功不远啦。

解决办法:

1.Open the Exchange Management Shell
2.输入: New-ManagementRoleAssignment –Name:impersonationAssignmentName –Role:ApplicationImpersonation –User:mapp 
mapp就是你要设置的模拟账号,当然你也可以设置其他.
Configuring Exchange Impersonation:http://msdn.microsoft.com/en-us/library/bb204095.aspx