OfficeRuntime.Auth interface
Интерфейс, содержащий API-интерфейсы, связанные с авторизацией.
Комментарии
Методы в этом интерфейсе эквивалентны методам в интерфейсе Office.auth. Если в будущем будут добавлены новые типы проверки подлинности, они будут добавлены только в Office.auth
интерфейс. Для простоты в примерах кода в документации используется Office.auth
.
Примеры
// Get the auth context object and use it to get an
// access token.
const authContext = OfficeRuntime.context.auth;
const accessToken = authContext.getAccessTokenAsync();
Методы
get |
Вызывает конечную точку Azure Active Directory версии 2.0, чтобы получить маркер доступа к вашей надстройке в веб-приложении. Позволяет надстройкам идентифицировать пользователей. Серверный код может использовать этот маркер для доступа к Microsoft Graph для веб-приложения надстройки с помощью потока OAuth "от имени". Для этого API необходима конфигурация единого входа, связывающая надстройку с приложением Azure. Пользователи Office входят с помощью учетных записей организаций и учетных записей Майкрософт. Microsoft Azure возвращает маркеры, предназначенные для учетных записей обоих типов, для доступа к ресурсам в Microsoft Graph. |
Сведения о методе
getAccessToken(options)
Вызывает конечную точку Azure Active Directory версии 2.0, чтобы получить маркер доступа к вашей надстройке в веб-приложении. Позволяет надстройкам идентифицировать пользователей. Серверный код может использовать этот маркер для доступа к Microsoft Graph для веб-приложения надстройки с помощью потока OAuth "от имени". Для этого API необходима конфигурация единого входа, связывающая надстройку с приложением Azure. Пользователи Office входят с помощью учетных записей организаций и учетных записей Майкрософт. Microsoft Azure возвращает маркеры, предназначенные для учетных записей обоих типов, для доступа к ресурсам в Microsoft Graph.
getAccessToken(options?: AuthOptions): Promise<string>;
Параметры
- options
- OfficeRuntime.AuthOptions
Необязательный параметр.
AuthOptions
Принимает объект для определения поведения входа.
Возвращаемое значение
Promise<string>
Обещание маркеру доступа.
Комментарии
Приложения: Excel, Outlook, PowerPoint, Word
Важно!
В Outlook этот API не поддерживается при загрузке надстройки в почтовый ящик Outlook.com или Gmail.
В Outlook в Интернете этот API не поддерживается, если вы используете браузер Safari. Это приводит к ошибке 13001 ("Пользователь не вошел в Office").
В Outlook в Интернете, если для открытия диалогового окна используется метод displayDialogAsync, его необходимо закрыть перед вызовом
getAccessToken
.
Примеры
async function getUserData() {
try {
let userTokenEncoded = await OfficeRuntime.auth.getAccessToken();
let userToken = jwt_decode(userTokenEncoded); // Using the https://www.npmjs.com/package/jwt-decode library.
console.log(userToken.name); // user name
console.log(userToken.preferred_username); // email
console.log(userToken.oid); // user id
}
catch (exception) {
if (exception.code === 13003) {
// SSO is not supported for domain user accounts, only
// Microsoft 365 Education or work account, or a Microsoft account.
} else {
// Handle error
}
}
}
Office Add-ins