Использование OAuth2 для Office365 через Exchange ActiveSync (EAS)

Сообщение в блоге: Объявление Exchange ActiveSync v16.1 утверждает, что:

Хотя это не является частью EAS 16.1, мы также хотим отметить, что клиенты Office 365 и Outlook.com теперь могут использовать протокол OAuth 2.0 для авторизации через EAS.

У меня вопрос: какую область мне следует использовать в запросе oauth?

Есть ли пример, может быть, полного запроса?

Примечание: был подобный вопрос об использовании OAuth для Office365 с IMAP, но здесь я с конкретным вопросом о ActiveSync. Я упомянул этот вопрос в комментарии к одному из ответов в этой теме < / а>.

Дополнительная проблема:

Благодаря ответу Джейсона и некоторым дополнительным настройкам нам удалось сгенерировать токен oauth, используя https://login.windows.net/common/oauth2, но только для пользователей office365 (учетные записи организаций), а не для учетных записей пользователей Microsoft (live, hotmail, outlook.com ...)

Маркер обеспечивает доступ к обоим протоколам ActiveSync (через https://eas.outlook.com/Microsoft-Server-ActiveSync) и для EWS API (через https://outlook.office365.com/EWS/Exchange.asmx).

К сожалению, мы не можем найти способ сгенерировать такой же токен для учетных записей Microsoft в Интернете (hotmail, live, outlook.com). Мы пробовали использовать эту конечную точку: https://login.live.com/oauth20_authorize.srf, который разрешить только activesync, но не EWS.

Есть ли способ использовать один и тот же токен как для учетных записей организации, так и для учетных записей в Интернете для обоих протоколов (ActiveSync и EWS)?


person grebulon    schedule 28.12.2016    source источник
comment
У меня такой же вопрос! Вы в этом разобрались?   -  person mike nelson    schedule 07.06.2017
comment
Нет. Я все еще надеюсь найти ответ ...   -  person grebulon    schedule 07.06.2017


Ответы (1)


Извините, это заняло так много времени, но я не знал об этом вопросе до сегодняшнего дня :). Вам необходимо зарегистрировать свое приложение как собственное приложение в Azure Active Directory:

введите здесь описание изображения

Затем добавьте делегированные права Доступ к почтовым ящикам в качестве пользователя, выполнившего вход через веб-службы Exchange (в разделе Office 365 Exchange Online).

ПРИМЕЧАНИЕ. Вы не можете зарегистрировать это на портале регистрации приложений (https://apps.dev.microsoft.com), его необходимо зарегистрировать на портале Azure (https://portal.azure.com/), и вам нужно использовать v1 Azure auth endpoints для авторизации и запросов токенов.

введите здесь описание изображения

person Jason Johnston    schedule 29.06.2017
comment
Спасибо за ваш ответ. Однако есть вторая проблема: нам нужно использовать один и тот же токен как для пользователей office365, так и для онлайн-пользователей (hotmail, live и т. Д.). Я добавил к вопросу полное описание. - person grebulon; 12.07.2017
comment
Конечные точки Azure v1 не поддерживают учетные записи Microsoft (Hotmail, Outlook.com и т. Д.). Они поддерживают только Office 365. - person Jason Johnston; 12.07.2017
comment
Есть ли способ, чтобы оба типа учетных записей (а также EWS и ActiveSync) работали с одним токеном oauth? Мы пробовали использовать LiveConnect, но он работал только для учетных записей MS. - person grebulon; 12.07.2017
comment
Нет, нет. Область EWS не отображается на конечных точках Azure v2, которые являются единственной конечной точкой, которая поддерживает конвергентную проверку подлинности (это означает, что как рабочие, так и личные учетные записи могут проходить проверку подлинности). - person Jason Johnston; 12.07.2017
comment
OK. Каковы будут область действия и конечная точка oauth для личной учетной записи (hotmail), которая работает с EWS? - person grebulon; 12.07.2017
comment
Я не верю, что он есть, но я это перепроверяю. - person Jason Johnston; 12.07.2017
comment
У меня та же проблема, и я вижу, что Джейсон Джонстон дважды проверял, но не отправлял ответ в эту ветку. Есть ли способ использовать OAUTH2 для учетной записи Outlook.com, чтобы он мог работать с EWS? - person Mark D.; 15.07.2018