Configuración de la experiencia optimizada de autenticación de código QR en la aplicación iOS/macOS

El método de autenticación de código QR permite a los trabajadores de primera línea iniciar sesión de forma rápida y sencilla en aplicaciones en dispositivos compartidos. Los usuarios pueden usar código QR único proporcionado por sus administradores y escribir su PIN para iniciar sesión, lo que elimina la necesidad de escribir nombres de usuario y contraseñas.

Puede usar la experiencia de inicio de sesión web de código QR disponible en login.microsoft.com. Este punto de acceso para el usuario no requiere cambios por parte del desarrollador. Los usuarios seleccionan Opciones de inicio> de sesiónIniciar sesión en una organización>Iniciar sesión con un código QR. Puede optimizar la experiencia de inicio de sesión con código QR al colocar el punto de entrada directamente en la página de inicio de sesión, lo que reduce en dos los clics necesarios para el usuario. Para aprovechar el método de autenticación de código QR, los desarrolladores de aplicaciones y el administrador de directivas de autenticación trabajan conjuntamente:

  • Los desarrolladores de aplicaciones integran el punto de entrada optimizado de la autenticación de código QR en su aplicación mediante la Biblioteca de autenticación de Microsoft (MSAL) para iOS y macOS.
  • El administrador de directivas de autenticación configura el método de autenticación en Microsoft Entra ID.

Configuración de la aplicación para usar la autenticación de código QR

Para configurar la aplicación para que use la autenticación de código QR, puede llamar a la getDeviceInformationWithParameters API en MSAL para recibir el MSALDeviceInformation objeto. En este objeto, hay disponible una nueva marca para reflejar la autenticación de código QR configurada por el administrador en la configuración de la extensión de inicio de sesión único (SSO). El siguiente fragmento de código muestra cómo recuperar el método de autenticación preferido:


@property (nonatomic, readonly) MSALPreferredAuthMethod configuredPreferredAuthMethod; 

MSALPreferredAuthMethod es una enumeración que describe los distintos métodos de autenticación disponibles. La configuredPreferredAuthMethod propiedad permite recuperar el método de autenticación preferido para la aplicación. Actualmente, el código QR es un valor de enumeración privado de 1. Cuando se libera a disponibilidad general (GA), es MSALPreferredAuthMethodQRPIN.

MSALInteractiveTokenParameters defina también un nuevo parámetro opcional de tipo MSALPreferredAuthMethod: preferredAuthMethod. Cuando este parámetro se establece para la autenticación de código QR, la interfaz de usuario de inicio de sesión interactiva resultante lleva al usuario directamente a la página de entrada de autenticación de código QR. El siguiente fragmento de código muestra cómo configurar la aplicación para usar la autenticación de código QR:

MSALWebviewParameters *webParameters = [[MSALWebviewParameters alloc] initWithAuthPresentationViewController:viewController]; 

     

MSALInteractiveTokenParameters *interactiveParams = [[MSALInteractiveTokenParameters alloc] initWithScopes:scopes webviewParameters:webParameters]; 

 

interactiveParams.preferredAuthMethod = 1; //Currently need to use the private enum value 

 

[application acquireTokenWithParameters:interactiveParams completionBlock:^(MSALResult *result, NSError *error) { 

    // When token acquisition completes 

}]; 

Este fragmento de código configura y adquiere un token mediante MSAL en una aplicación de iOS, centrándose en la autenticación de código QR. Inicializa MSALWebviewParameters con un controlador de vista para la vista web de autenticación y crea MSALInteractiveTokenParameters con los ámbitos y parámetros web necesarios. El método de autenticación preferido se establece en autenticación de código QR.

Por último, llama a acquireTokenWithParameters en la instancia MultipleAccountPublicClientApplication, utilizando los parámetros configurados y un bloque de finalización para gestionar el resultado. Esta configuración garantiza que el flujo de autenticación use el método de autenticación de código QR para una autenticación de usuario segura y cómoda.

Se recomienda llamar a la getDeviceInformationWithParameters API en MSAL para averiguar si el administrador ha configurado el método de autenticación de código QR. Si lo tiene, una aplicación puede actualizar su interfaz de usuario para indicar que el método de autenticación de código QR está disponible como opción de inicio de sesión.

De forma predeterminada, la autenticación de código QR solicita a los usuarios permiso de cámara cada vez que necesiten usar la cámara para escanear un código QR.

Captura de pantalla de cómo permitir el acceso a la cámara en iOS.

Los administradores pueden suprimir este comportamiento y omitir la solicitud de permiso de cámara. Para configurar la solicitud, establezca la siguiente configuración de extensión de SSO:

  • Clave: suppress_camera_consent
  • Tipo: Integer
  • Valor: 1 o 0. Este valor está establecido en 0 de manera predeterminada.

La ubicación es la misma que donde puede configurar preferred_auth_method. Para obtener más información sobre la configuración de la extensión SSO, consulte Más opciones de configuración para el complemento SSO de Microsoft Enterprise para dispositivos Apple.

Note

El mensaje de consentimiento de la cámara se muestra una vez debido a los requisitos del sistema operativo.