Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Se aplica a: inquilinos de personal
inquilinos externos (más información)
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, harás lo siguiente:
- Agregue el marco MSAL a una aplicación de iOS/macOS.
- Cree una instancia del SDK.
Prerrequisitos
- Xcode
- Si aún no lo ha hecho, siga las instrucciones de Inicio de sesión de usuarios en una aplicación móvil de iOS (Swift) de ejemplo mediante la autenticación nativa y registre una aplicación en el inquilino externo. Asegúrese de completar los pasos siguientes:
- Registrar una aplicación
- Habilite los flujos de autenticación para clientes públicos y nativos.
- Conceda permisos de API.
- Cree un flujo de usuario.
- Asocie la aplicación al flujo de usuario.
- Proyecto de iOS/macOS
Adición del marco MSAL a una aplicación de iOS/macOS
- Abra el proyecto de iOS/macOS en Xcode.
- Seleccione Agregar dependencias de paquete... en el menú Archivo .
- Escriba
https://github.com/AzureAD/microsoft-authentication-library-for-objc
como dirección URL del paquete y elija Agregar paquete. - Agregue un nuevo grupo de cadena de claves al proyecto Capacidades. Use
com.microsoft.adalcache
en iOS ycom.microsoft.identity.universalstorage
en macOS.
Para obtener más información y otros mecanismos para agregar MSAL al proyecto, consulte el archivo Léame del proyecto.
Creación de una instancia del SDK
Importe la biblioteca MSAL en el controlador de vista agregando
import MSAL
en la parte superior de laViewController
clase.Agregue una
nativeAuth
variable miembro a laViewController
clase agregando el código siguiente justo antes de laviewDidLoad()
función:var nativeAuth: MSALNativeAuthPublicClientApplication!
A continuación, agregue el código siguiente a la
viewDidLoad()
función :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)") }
Reemplace los valores siguientes por los valores del Centro de administración de Microsoft Entra:
Busque el
Enter_the_Application_Id_Here
valor y reemplácelo por el identificador de aplicación (cliente) de la aplicación que registró anteriormente.Busque
Enter_the_Tenant_Subdomain_Here
y reemplácelo por el subdominio del directorio (inquilino). Por ejemplo, si el dominio principal del cliente escontoso.onmicrosoft.com
, utilicecontoso
. 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 un código de uso único enviado por 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.
- Para flujos de registro e inicio de sesión con un código de uso único enviado por correo electrónico, use
Para realizar la compilación, seleccione Producto>Compilar 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 la depuración de MSAL, agregue el siguiente código 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, consulte Registro en MSAL para iOS/macOS.