Office.Auth interface

Пространство имен Проверки подлинности Office предоставляет метод, Office.authпозволяющий клиентскому приложению Office получить маркер доступа к веб-приложению надстройки. Косвенно это также дает возможность надстройке получать доступ к данным Microsoft Graph пользователя, вошедшего в систему, не требуя от пользователя еще раз выполнить вход в систему.

Методы

getAccessToken(options)

Вызывает конечную точку Azure Active Directory версии 2.0, чтобы получить маркер доступа к вашей надстройке в веб-приложении. Позволяет надстройкам идентифицировать пользователей. Серверный код может использовать этот маркер для доступа к Microsoft Graph для веб-приложения надстройки с помощью потока OAuth "от имени". Для этого API необходима конфигурация единого входа, связывающая надстройку с приложением Azure. Пользователи Office входят с помощью учетных записей организации и учетных записей Майкрософт. Microsoft Azure возвращает маркеры, предназначенные для учетных записей обоих типов, для доступа к ресурсам в Microsoft Graph.

getAccessTokenAsync(options, callback)

Вызывает конечную точку Azure Active Directory версии 2.0, чтобы получить маркер доступа к вашей надстройке в веб-приложении. Позволяет надстройкам идентифицировать пользователей. Серверный код может использовать этот маркер для доступа к Microsoft Graph для веб-приложения надстройки с помощью потока OAuth "от имени".

Важно! В Outlook этот API не поддерживается, если надстройка загружена в почтовый ящик Outlook.com или Gmail.

Предупреждение: getAccessTokenAsync не рекомендуется. Вместо этого используйте Office.auth.getAccessToken .

getAccessTokenAsync(callback)

Вызывает конечную точку Azure Active Directory версии 2.0, чтобы получить маркер доступа к вашей надстройке в веб-приложении. Позволяет надстройкам идентифицировать пользователей. Серверный код может использовать этот маркер для доступа к Microsoft Graph для веб-приложения надстройки с помощью потока OAuth "от имени".

Важно! В Outlook этот API не поддерживается, если надстройка загружена в почтовый ящик Outlook.com или Gmail.

Предупреждение: getAccessTokenAsync не рекомендуется. Вместо этого используйте Office.auth.getAccessToken .

Сведения о методе

getAccessToken(options)

Вызывает конечную точку Azure Active Directory версии 2.0, чтобы получить маркер доступа к вашей надстройке в веб-приложении. Позволяет надстройкам идентифицировать пользователей. Серверный код может использовать этот маркер для доступа к Microsoft Graph для веб-приложения надстройки с помощью потока OAuth "от имени". Для этого API необходима конфигурация единого входа, связывающая надстройку с приложением Azure. Пользователи Office входят с помощью учетных записей организации и учетных записей Майкрософт. Microsoft Azure возвращает маркеры, предназначенные для учетных записей обоих типов, для доступа к ресурсам в Microsoft Graph.

getAccessToken(options?: AuthOptions): Promise<string>;

Параметры

options
Office.AuthOptions

Необязательный параметр. AuthOptions Принимает объект для определения поведения входа.

Возвращаемое значение

Promise<string>

Обещание маркеру доступа.

Комментарии

Приложения: Excel, OneNote, Outlook, PowerPoint, Word

Набор обязательных требований: IdentityAPI 1.3

Важно!

  • В Outlook этот API не поддерживается при загрузке надстройки в почтовый ящик Outlook.com или Gmail.

  • В Outlook в Интернете этот API не поддерживается, если вы используете браузер Safari. Это приводит к ошибке 13001 ("Пользователь не вошел в Office").

  • В Outlook в Интернете, если для открытия диалогового окна используется метод displayDialogAsync, его необходимо закрыть перед вызовом getAccessToken.

  • В надстройке активации на основе событий Outlook этот API поддерживается в Outlook для Windows начиная с версии 2111 (сборка 14701.20000). Чтобы получить маркер доступа в более старых сборках, используйте вместо него OfficeRuntime.auth.getAccessToken . Дополнительные сведения см. в статье Включение единого входа в надстройках Outlook, использующих активацию на основе событий.

Примеры

try{
    const accessToken = await Office.auth.getAccessToken({
        allowSignInPrompt: true,
        allowConsentPrompt: true,
        forMSGraphAccess: true,
    });
} catch (error) {
    console.log("Error obtaining token", error);
}

getAccessTokenAsync(options, callback)

Предупреждение

Теперь этот API является нерекомендуемым.

Use Office.auth.getAccessToken instead.

Вызывает конечную точку Azure Active Directory версии 2.0, чтобы получить маркер доступа к вашей надстройке в веб-приложении. Позволяет надстройкам идентифицировать пользователей. Серверный код может использовать этот маркер для доступа к Microsoft Graph для веб-приложения надстройки с помощью потока OAuth "от имени".

Важно! В Outlook этот API не поддерживается, если надстройка загружена в почтовый ящик Outlook.com или Gmail.

Предупреждение: getAccessTokenAsync не рекомендуется. Вместо этого используйте Office.auth.getAccessToken .

getAccessTokenAsync(options?: AuthOptions, callback?: (result: AsyncResult<string>) => void): void;

Параметры

options
Office.AuthOptions

Необязательный параметр. AuthOptions Принимает объект для определения поведения входа.

callback

(result: Office.AsyncResult<string>) => void

Необязательный параметр. Принимает функцию обратного вызова, которая может анализировать маркер для идентификатора пользователя или использовать маркер в потоке "от имени" для получения доступа к Microsoft Graph. Если AsyncResult.status параметр имеет значение "успешно", то AsyncResult.value является необработанным маркером доступа в формате AAD версии 2.0.

Возвращаемое значение

void

Комментарии

Приложения: Excel, OneNote, Outlook, PowerPoint, Word

Набор обязательных требований: IdentityAPI 1.3

Для этого API необходима конфигурация единого входа, связывающая надстройку с приложением Azure. Пользователи Office входят с помощью учетных записей организации и учетных записей Майкрософт. Microsoft Azure возвращает маркеры, предназначенные для учетных записей обоих типов, для доступа к ресурсам в Microsoft Graph.

Примеры

Office.context.auth.getAccessTokenAsync(function(result) {
    if (result.status === Office.AsyncResultStatus.Succeeded) {
        const token = result.value;
        // ...
    } else {
        console.log("Error obtaining token", result.error);
    }
});

getAccessTokenAsync(callback)

Предупреждение

Теперь этот API является нерекомендуемым.

Use Office.auth.getAccessToken instead.

Вызывает конечную точку Azure Active Directory версии 2.0, чтобы получить маркер доступа к вашей надстройке в веб-приложении. Позволяет надстройкам идентифицировать пользователей. Серверный код может использовать этот маркер для доступа к Microsoft Graph для веб-приложения надстройки с помощью потока OAuth "от имени".

Важно! В Outlook этот API не поддерживается, если надстройка загружена в почтовый ящик Outlook.com или Gmail.

Предупреждение: getAccessTokenAsync не рекомендуется. Вместо этого используйте Office.auth.getAccessToken .

getAccessTokenAsync(callback?: (result: AsyncResult<string>) => void): void;

Параметры

callback

(result: Office.AsyncResult<string>) => void

Необязательный параметр. Принимает функцию обратного вызова, которая может анализировать маркер для идентификатора пользователя или использовать маркер в потоке "от имени" для получения доступа к Microsoft Graph. Если AsyncResult.status параметр имеет значение "успешно", то AsyncResult.value является необработанным маркером доступа в формате AAD версии 2.0.

Возвращаемое значение

void

Комментарии

Приложения: Excel, OneNote, Outlook, PowerPoint, Word

Набор обязательных требований: IdentityAPI 1.3

Для этого API необходима конфигурация единого входа, связывающая надстройку с приложением Azure. Пользователи Office входят с помощью учетных записей организации и учетных записей Майкрософт. Microsoft Azure возвращает маркеры, предназначенные для учетных записей обоих типов, для доступа к ресурсам в Microsoft Graph.