We are trying to integrate office 365 using EWS managed API's. We have created one service account with impersonation role using office 365 admin center. Now, how can we use that service account to access other user's data(like mails, contacts, calendar) in the application ? Thanks, Rohit
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
You create an instance of ExchangeService as usual and then set its ImpersonatedUserId.
Sample:
var credentials = new WebCredentials(
"impersonateduser@your.onmicrosoft.com", "password", "");
var exchange = new ExchangeService{PreAuthenticate=true, Credentials=credentials};
exchange.ImpersonatedUserId = new ImpersonatedUserId(
ConnectingIdType.SmtpAddress,
"calendaruser@your.onmicrosoft.com");
After this you can access the other user's (in this case calendaruser
) data.
回答2:
http://msdn.microsoft.com/en-us/library/office/dn722377(v=exchg.150).aspx and all of its sub-topics is a good place to start.