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

Завершено

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

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

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

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

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

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

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

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

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

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

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

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

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