Подключение приложения ASP.NET Core к Microsoft 365

Завершено

Из этого модуля вы узнаете, как реализовать проверку подлинности приложения для подключения к Microsoft Graph и безопасного доступа к данным из Microsoft 365.

Аутентификация для доступа к данным из Microsoft 365

Microsoft Graph — это REST API, который предоставляет доступ к данным и аналитическим сведениям, хранящимся в Microsoft 365. Эта информация не является общедоступной. Чтобы получить доступ, пользователям необходимо (а) пройти проверку удостоверения (аутентификацию) и (б) разрешить приложению доступ к своим данным. Это задание Azure Active Directory.

Приложению необходимо получить маркер доступа из Azure Active Directory и включать его в каждый запрос к Microsoft Graph. Маркер доступа можно представить как билет в кино: приложение использует протокол OAuth для получения билета, а затем представляет билет оператору (Microsoft Graph), чтобы перейти к фильму (защищенные ресурсы в Microsoft 365).

После настройки удостоверения пользователи могут выполнять вход в приложение, используя имеющуюся учетную запись Microsoft 365. Это избавляет вас от необходимости внедрять аутентификацию в свое приложение и хранить учетные данные пользователей. Это удобно и для пользователей — им не нужны дополнительные учетные данные для доступа к вашему приложению. Кроме того, это позволяет организациям контролировать доступ своих сотрудников к различным приложениям, что очень важно в наше время.

Схема потока доступа для событий в Microsoft Graph.

Подключение к Microsoft 365 с помощью пакетов SDK

И Azure Active Directory, и Microsoft Graph являются службами REST, поэтому теоретически можно получать события календаря с помощью прямых HTTP-запросов. Тем не менее, чтобы упростить эту задачу, Майкрософт предлагает два пакета средств разработки (SDK), которые автоматически выполняют нужные запросы. Эти пакеты SDK автоматически создают запросы и обрабатывают исключения, что позволяет вам сосредоточиться на создании приложения.

Служба Пакет SDK
Azure Active Directory Библиотека проверки подлинности Майкрософт (MSAL)
Microsoft Graph Пакет SDK Microsoft Graph

MSAL обрабатывает сведения протокола OAuth с помощью Azure Active Directory. С помощью MSAL приложение позволяет пользователям входить с использованием учетных записей Microsoft 365 и соглашаться на предоставление необходимых разрешений приложению. После входа MSAL предоставит маркер доступа, необходимый для взаимодействия с Microsoft Graph.

Чтобы упростить процесс работы с MSAL, приложения ASP.NET Core могут использовать сборку с именем Microsoft.Identity.Web. Эта сборка абстрагирует функциональность MSAL и упрощает общий процесс ее интеграции в приложения.

Дальнейшие действия

Для начала мы создадим простое приложение, подключенное к Microsoft 365, которое показывает имя пользователя и аватар, полученные из Microsoft 365.