Autenticación de un usuario con un token de inicio de sesión único en un complemento de Outlook

El inicio de sesión único (SSO) ofrece una forma sencilla para que un complemento autentique a usuarios (y, de manera opcional, obtenga tokens de acceso para llamar a la API de Microsoft Graph).

Con este método, el complemento puede obtener un token de acceso con ámbito de la API de back-end de servidor. El complemento usa esto como un token de portador en el Authorization encabezado para autenticar una llamada a la API. Opcionalmente, también puede tener el código del lado servidor.

  • Completar el flujo en nombre de para obtener un token de acceso en el ámbito de la API de Microsoft Graph
  • Usar la información de identidad del token para establecer la identidad del usuario y autenticar sus propios servicios de back-end

Para obtener información general sobre SSO en complementos de Office, vea Habilitar el inicio de sesión único para complementos de Office y Autorizar a Microsoft Graph en complementos de Office.

Habilitación de la autenticación moderna en el inquilino de Microsoft 365

Para usar sso con un complemento de Outlook, debe habilitar la autenticación moderna para el inquilino de Microsoft 365. Para obtener información sobre cómo hacerlo, vea Habilitar o deshabilitar la autenticación moderna para Outlook en Exchange Online.

Registrar el complemento

Para usar SSO, es necesario que el complemento de Outlook tenga una API web del lado servidor registrada con Azure Active Directory (AAD) versión 2.0. Para obtener más información, vea Registrar un complemento de Office que use SSO con el punto de conexión de Azure AD versión 2.0.

Al desarrollar un complemento, tendrá que proporcionar su consentimiento por adelantado. Para obtener más información, consulte Consentimiento del administrador.

Actualizar el manifiesto del complemento

El siguiente paso para habilitar el inicio de sesión único en el complemento es agregar información al manifiesto desde el registro de la plataforma de identidad de Microsoft del complemento. El marcado varía en función del tipo de manifiesto.

  • Manifiesto de solo complemento: agregue un WebApplicationInfo elemento al final del VersionOverridesV1_1 elemento VersionOverrides. A continuación, agregue sus elementos secundarios necesarios. Para obtener información detallada sobre el marcado, vea Configurar el complemento.

  • Manifiesto unificado para Microsoft 365: agregue una propiedad "webApplicationInfo" al objeto raíz { ... } en el manifiesto. Asigne a este objeto una propiedad "id" secundaria establecida en el identificador de aplicación de la aplicación web del complemento tal como se generó en Azure Portal cuando registró el complemento. (Consulte la sección Registro del complemento anteriormente en este artículo). Asígnele también una propiedad "resource" secundaria que esté establecida en el mismo URI de identificador de aplicación que estableció al registrar el complemento. Este URI debe tener el formato api://<fully-qualified-domain-name>/<application-id>. A continuación se muestra un ejemplo.

    "webApplicationInfo": {
          "id": "a661fed9-f33d-4e95-b6cf-624a34a2f51d",
          "resource": "api://addin.contoso.com/a661fed9-f33d-4e95-b6cf-624a34a2f51d"
      },
    

Obtener el token SSO

El complemento obtiene un token SSO con un script del lado cliente. Para obtener más información, vea Agregar código del lado cliente.

Usar un token SSO en el back-end

En la mayoría de los escenarios, no tendría mucho sentido obtener el token de acceso si el complemento no lo pasa a código del lado servidor y lo usa allí. Para obtener más información sobre lo que puede y tiene que hacer el código del lado servidor, vea Agregar código del lado servidor.

Importante

Al usar un token SSO como identidad en un complemento de Outlook, le recomendamos que también use el token de identidad de Exchange como identidad alternativa. Los usuarios del complemento podrían usar varios clientes, y es posible que algunos no proporcionen un token SSO. Si, como alternativa, usa un token de identidad de Exchange, no tendrá que pedir las credenciales a estos usuarios en varias ocasiones. Para obtener más información, vea Escenario: implementar el inicio de sesión único a un servicio en un complemento de Outlook.

Inicio de sesión único para la activación basada en eventos o informes de correo no deseado integrados

Hay que realizar pasos adicionales si el complemento usa la activación basada en eventos o informes de correo no deseado integrados (versión preliminar). Para obtener más información, consulte Uso del inicio de sesión único (SSO) o el uso compartido de recursos entre orígenes (CORS) en el complemento de Outlook de informes de correo no deseado o basado en eventos.

Vea también