Compartir vía


Tutorial: Preparación de la aplicación iOS/macOS para la autenticación nativa

Se aplica a: Círculo verde con un símbolo de marca de verificación blanca. iOS (Swift) Círculo verde con un símbolo de marca de verificación blanca. macOS (Swift)

En este tutorial se muestra cómo agregar el marco del SDK de autenticación nativa de la Biblioteca de autenticación de Microsoft (MSAL) a la aplicación Swift de iOS/macOS.

En este tutorial, aprenderá a:

  • Agregar el marco MSAL a una aplicación de iOS/macOS.
  • Crear una instancia del SDK.

Requisitos previos

Agregar el marco MSAL a una aplicación de iOS/macOS

  1. Abre el proyecto iOS/macOS en Xcode.
  2. Seleccione Agregar dependencias de paquete... en el menú Archivo.
  3. Escriba https://github.com/AzureAD/microsoft-authentication-library-for-objc como dirección URL del paquete y elija Agregar paquete.
  4. Agregue un nuevo grupo de cadena de claves al proyecto Capacidades. Use com.microsoft.adalcache en iOS y com.microsoft.identity.universalstorage en macOS.

Para obtener más información y otros mecanismos para agregar MSAL al proyecto, vea el archivo Léame de proyecto.

Creación de una instancia del SDK

  1. Importe la biblioteca MSAL en el controlador de vista agregando import MSAL en la parte superior de la clase ViewController.

  2. Agregue una variable miembro nativeAuth a su clase ViewController agregando el siguiente código justo antes de la función viewDidLoad():

    var nativeAuth: MSALNativeAuthPublicClientApplication!
    
  3. A continuación, agregue el código siguiente a la función viewDidLoad():

     do {
        nativeAuth = try MSALNativeAuthPublicClientApplication(
            clientId: "Enter_the_Application_Id_Here",
            tenantSubdomain: "Enter_the_Tenant_Subdomain_Here",
            challengeTypes: [.OOB]
        )
    
        print("Initialized Native Auth successfully.")
     } catch {
        print("Unable to initialize MSAL \(error)")
     }
    
  4. Reemplace los siguientes valores por los del Centro de administración Microsoft Entra:

    1. Busque el valor Enter_the_Application_Id_Here y sustitúyalo por el Id. de aplicación (cliente) de la aplicación que registró anteriormente.

    2. Busque el Enter_the_Tenant_Subdomain_Here y reemplácelo por el subdominio del directorio (inquilino). Por ejemplo, si el dominio principal del inquilino es contoso.onmicrosoft.com, use contoso. Si no tiene el subdominio Directory (tenant), aprenda a leer los detalles del inquilino.

      Los tipos de desafío son una lista de valores que la aplicación usa para notificar a Microsoft Entra sobre el método de autenticación que admite.

      • Para flujos de registro e inicio de sesión con código de acceso de un solo uso de correo electrónico, use [.OOB].
      • Para flujos de registro e inicio de sesión con correo electrónico y contraseña, use [.OOB, .password].
      • En el caso del autoservicio de restablecimiento de contraseña (SSPR), use [.OOB].

      Obtenga más información sobre los tipos de desafío.

  5. Para compilar, seleccione el Producto>Compilación en la barra de herramientas del proyecto.

Opcional: Configuración de registro

MSAL proporciona una API de registro que puede usar para habilitar y configurar el registro. Para ver todos los resultados de depuración de MSAL, agregue el código siguiente al principio de la función viewDidLoad():

MSALGlobalConfig.loggerConfig.logLevel = .verbose
MSALGlobalConfig.loggerConfig.setLogCallback { logLevel, message, containsPII in
   if !containsPII {
      print("MSAL: \(message ?? "")")
   }
}

Esto genera todos los registros de depuración de MSAL, lo que puede resultar útil para diagnosticar problemas y aprender cómo funcionan los flujos de autenticación nativos. Para obtener más información sobre cómo configurar los niveles de registro y los procedimientos recomendados, vea Registro en MSAL para iOS/macOS.

Paso siguiente