我的網絡服務,目前正在做基本的用戶名/密碼認證,以認購交換用戶接收的事件(如新郵件事件等),象下面這樣:如何使用OAuth的認證訪問EWS API的
var service = new ExchangeService(exchangeVersion)
{
KeepAlive = true,
Url = new Uri("some autodiscovery url"),
Credentials = new NetworkCredential(username, password)
};
var subscription = service.SubscribeToPushNotifications(
new[] { inboxFolderFoldeID },
new Uri("some post back url"),
15,
null,
EventType.NewMail,
EventType.Created,
EventType.Deleted,
EventType.Modified,
EventType.Moved,
EventType.Copied);
現在,我應該更換認證機制以使用OAuth協議。我看到一些例子,但他們似乎都在談論如何驗證客戶端(https://msdn.microsoft.com/en-us/library/office/dn903761%28v=exchg.150%29.aspx?f=255&MSPPError=-2147217396),但是我找不到一個如何使用OAuth協議驗證交換用戶身份的示例。任何代碼示例都會有所幫助。謝謝。
在爲EWS調查oauth時出現的另外一件事是,它僅適用於Office 365而不適用於Exchange服務器。 https://msdn.microsoft.com/zh-cn/library/office/dn903761(v=exchg.150).aspx表示「EWS的OAuth身份驗證僅在Exchange中作爲Office 365的一部分提供。EWS應用程序需要「完全訪問用戶的郵箱」權限。「 – tavier
不幸的是,這些鏈接都沒有談到如何使它與EWS託管API協同工作。我在問題中發佈的msdn網址似乎並沒有對用戶進行身份驗證,只是授權客戶端似乎是 – tavier
你看過https://blogs.technet.microsoft.com/ronba/2016/05/09/using-powershell -and-the-office-365-rest-api-with-oauth /? – Eris