OfficeRuntime.Auth interface

Interfaz que contiene LAS API relacionadas con la autorización.

Comentarios

Los métodos de esta interfaz son equivalentes a los de la interfaz Office.auth. Si se agregan nuevos tipos de autenticación en el futuro, solo se agregarán a la Office.auth interfaz. Por motivos de simplicidad, los ejemplos de código de toda la documentación usan Office.auth.

Ejemplos

// Get the auth context object and use it to get an
// access token.
const authContext = OfficeRuntime.context.auth;
const accessToken = authContext.getAccessTokenAsync();

Métodos

getAccessToken(options)

Llama al punto de conexión de Azure Active Directory V 2.0 para obtener acceso a un token para la aplicación de web del complemento. Permite que los complementos identifiquen a los usuarios. El código del lado servidor puede usar este token para acceder a Microsoft Graph para la aplicación web del complemento mediante el flujo de OAuth "en nombre de". Esta API requiere una configuración de inicio de sesión único que relacione el complemento con una aplicación de Azure. Inicio de sesión de los usuarios de Office con cuentas de organizaciones y cuentas Microsoft. Microsoft Azure devuelve tokens destinados a ambos tipos de cuentas de usuario para tener acceso a recursos en Microsoft Graph.

Detalles del método

getAccessToken(options)

Llama al punto de conexión de Azure Active Directory V 2.0 para obtener acceso a un token para la aplicación de web del complemento. Permite que los complementos identifiquen a los usuarios. El código del lado servidor puede usar este token para acceder a Microsoft Graph para la aplicación web del complemento mediante el flujo de OAuth "en nombre de". Esta API requiere una configuración de inicio de sesión único que relacione el complemento con una aplicación de Azure. Inicio de sesión de los usuarios de Office con cuentas de organizaciones y cuentas Microsoft. Microsoft Azure devuelve tokens destinados a ambos tipos de cuentas de usuario para tener acceso a recursos en Microsoft Graph.

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

Parámetros

options
OfficeRuntime.AuthOptions

Opcional. Acepta un AuthOptions objeto para definir comportamientos de inicio de sesión.

Devoluciones

Promise<string>

Prométese con el token de acceso.

Comentarios

Aplicaciones: Excel, Outlook, PowerPoint, Word

Importante:

  • En Outlook, esta API no se admite si carga un complemento en un buzón de correo de Outlook.com o Gmail.

  • En Outlook en la Web, esta API no se admite si usa el explorador Safari. Esto da como resultado el error 13001 ("El usuario no ha iniciado sesión en Office").

  • En Outlook en la Web, si usa el método displayDialogAsync para abrir un cuadro de diálogo, debe cerrar el cuadro de diálogo para poder llamar a getAccessToken.

Ejemplos

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
      }
  }
}