Проверка подлинности пользователя с помощью маркера единого входа в надстройке Outlook
Единый вход (SSO) упрощает проверку подлинности пользователей в надстройке (и, при необходимости, получение маркеров доступа для вызова API Microsoft Graph).
Так надстройка может получить маркер доступа, действующий во внутреннем API сервера. Надстройка использует этот маркер в качестве токена носителя в заголовке Authorization
, чтобы выполнять проверку подлинности обратного вызова API. При необходимости также можно использовать код на стороне сервера.
- выполнить поток "от имени", чтобы получить маркер доступа, действующий в API Microsoft Graph;
- использовать сведения об удостоверении в маркере для определения удостоверения пользователя и проверки подлинности во внутренних службах.
Общие сведения о едином входе в надстройках Office см. в статье Включение единого входа для надстроек Office (тестовый режим) и Авторизация для Microsoft Graph в надстройке Office.
Включение современной проверки подлинности в клиенте Microsoft 365
Чтобы использовать единый вход с надстройкой Outlook, необходимо включить современную проверку подлинности для клиента Microsoft 365. Сведения о том, как это сделать, см. в статье Включение или отключение современной проверки подлинности для Outlook в Exchange Online.
Регистрация надстройки
Чтобы использовать единый вход, надстройке Outlook потребуется серверный веб-API, зарегистрированный в Azure Active Directory (AAD) версии 2.0. Дополнительные сведения см. в статье Регистрация надстройки Office, использующей единый вход с конечной точкой Microsoft Azure AD версии 2.0.
Предоставление согласия при загрузке неопубликованной надстройки
При разработке надстройки необходимо предоставить согласие заранее. Дополнительные сведения см. в разделе Согласие администратора.
Обновление манифеста надстройки
Следующим шагом для включения единого входа в надстройке является добавление некоторых сведений в манифест из регистрации платформы удостоверений Майкрософт надстройки. Разметка зависит от типа манифеста.
Манифест только надстройки. Добавьте
WebApplicationInfo
элемент в конецVersionOverridesV1_1
элемента VersionOverrides. Затем добавьте необходимые дочерние элементы. Подробные сведения о разметке см. в разделе Настройка надстройки.Унифицированный манифест для Microsoft 365: добавьте свойство webApplicationInfo в корневой
{ ... }
объект манифеста. Присвойте этому объекту дочернее свойство id, задающее идентификатор приложения веб-приложения надстройки, которое было создано на портале Azure при регистрации надстройки. (См. раздел Регистрация надстройки ранее в этой статье.) Кроме того, присвойте ему дочернее свойство resource, которое имеет тот же URI идентификатора приложения , который вы задали при регистрации надстройки. Этот URI должен иметь формуapi://<fully-qualified-domain-name>/<application-id>
. Ниже приведен пример."webApplicationInfo": { "id": "a661fed9-f33d-4e95-b6cf-624a34a2f51d", "resource": "api://addin.contoso.com/a661fed9-f33d-4e95-b6cf-624a34a2f51d" },
Получение маркера единого входа
Надстройка получает маркер единого входа с помощью клиентского скрипта. Дополнительные сведения см. в разделе Добавление кода для клиента.
Использование маркера единого входа во внутренней службе
В большинстве случаев практически нет смысла получать маркер доступа, если надстройка не передает его на сторону сервера и не использует его там. Дополнительные сведения о том, какие действия должны выполняться на стороне сервера, а какие нет, см. в разделе Добавление серверного кода.
Важно!
При использовании маркера единого входа в качестве удостоверения в Outlook рекомендуем также использовать маркер удостоверения Exchange в качестве альтернативного удостоверения. Пользователи надстройки могут использовать различные клиенты, не все и которых поддерживают предоставление маркера единого входа. Если в качестве альтернативы используется маркер удостоверения Exchange, вы можете избежать повторного запрашивания учетных данных этих пользователей. Дополнительные сведения см. в статье Сценарий: реализация единого входа для службы в надстройке Outlook.
Единый вход для активации на основе событий или интегрированных отчетов о нежелательной почте
Если надстройка использует активацию на основе событий или встроенные отчеты о спаме (предварительная версия), необходимо выполнить дополнительные действия. Дополнительные сведения см. в статье Использование единого входа (SSO) или совместного доступа к ресурсам между источниками (CORS) в надстройке Outlook на основе событий или рассылки нежелательной почты.
См. также
- getAccessToken
- Пример надстройки Outlook, которая использует маркер единого входа для доступа к API Microsoft Graph, см. в статье Единый вход надстроек Outlook.
- Справочные материалы по API единого входа
- Настройка требования IdentityAPI
- Использование единого входа (SSO) или совместного доступа к ресурсам между источниками (CORS) в надстройке Outlook на основе событий или рассылки нежелательной почты
Office Add-ins