Compartir vía


Inicio de sesión de usuarios en una aplicación macOS (Swift) de ejemplo mediante autenticación nativa

En esta guía se muestra cómo ejecutar una aplicación de ejemplo macOS que demuestra escenarios de registro e inicio de sesión mediante Id. externa de Microsoft Entra.

En este artículo aprenderá a:

  • Registre la aplicación en el inquilino externo.
  • Habilite el cliente público y los flujos de autenticación nativos.
  • Cree un flujo de usuario en el inquilino externo.
  • Asocie su aplicación al flujo de usuarios.
  • Actualiza una aplicación macOS nativa de ejemplo para usar tus propios detalles de inquilino externo.
  • Ejecuta y prueba la aplicación macOS nativa de ejemplo.

Requisitos previos

Registrar una aplicación

Para permitir que su aplicación inicie la sesión de los usuarios con Microsoft Entra, id. externa de Microsoft Entra debe tener en cuenta la aplicación que haya creado. El registro de la aplicación establece una relación de confianza entre la aplicación y Microsoft Entra. Al registrar una aplicación, External ID genera un identificador único conocido como Id. de aplicación (cliente), un valor que se usa para identificar la aplicación al crear solicitudes de autenticación.

En los pasos siguientes, se muestra cómo registrar una aplicación en el centro de administración de Microsoft Entra:

  1. Inicie sesión en el Centro de administración de Microsoft Entra al menos como Desarrollador de aplicaciones.

  2. Si tienes acceso a varios inquilinos, usa el icono Configuración en el menú superior para cambiar al inquilino externo desde el menú Directorios y suscripciones.

  3. Ve aIdentidad>Aplicaciones>Registros de aplicaciones.

  4. Seleccione + Nuevo registro.

  5. En la página Registrar una aplicación que aparece;

    1. Introduzca un Nombre de aplicación significativo que se muestre a los usuarios de la aplicación, por ejemplo ciam-client-app.
    2. En Tipos de cuenta admitidos, seleccione Solo las cuentas de este directorio organizativo.
  6. Seleccione Registrar.

  7. Se muestra el panel Información general de la aplicación tras registrarse correctamente. Registre el Id. de la aplicación (cliente) que se usará en el código fuente de la aplicación.

Habilitación de flujos de autenticación nativa y cliente público

Para especificar que esta aplicación es un cliente público y puede usar la autenticación nativa, habilite el cliente público y los flujos de autenticación nativos:

  1. En la página registros de aplicaciones, seleccione el registro de aplicaciones para el que desea habilitar flujos de autenticación nativa y cliente público.
  2. En Administrar, seleccione Autenticación.
  3. En Configuración avanzada, permita flujos de cliente públicos:
    1. Para Habilitar los siguientes flujos de escritorio y móvil seleccione .
    2. Para Habilitar autenticación nativa, seleccione .
  4. Seleccione el botón Guardar.
  1. En la página Registros de aplicaciones, seleccione la aplicación que creó (como ciam-client-app) para abrir la página Información general.

  2. En Administrar, seleccione Permisos de API. En la lista Permisos configurados, a la aplicación se le ha asignado el permiso User.Read. Sin embargo, como el inquilino es un inquilino externo, los propios usuarios del consumidor no pueden dar su consentimiento a este permiso. Como administrador, debe dar el consentimiento a este permiso en nombre de todos los usuarios del inquilino:

    1. Seleccione Conceder consentimiento del administrador para <nombre del inquilino> y seleccione .
    2. Seleccione Actualizar y luego compruebe que aparece Concedido para <nombre del inquilino> en Estado para ambos ámbitos.

Creación de un flujo de usuario

Siga estos pasos para crear un flujo de usuario.

  1. Inicie sesión en el Centro de administración de Microsoft Entra al menos como Desarrollador de aplicaciones.

  2. Si tiene acceso a varios inquilinos, asegúrese de usar el directorio que contiene el inquilino externo:

    1. Seleccione el icono Directorios y suscripciones en la barra de herramientas.
    2. En la página Configuración del portal | Directorios y suscripciones, busque el directorio de inquilino externo en la lista Nombre de directorio y, después, seleccione Cambiar.
  3. En el menú de la barra lateral, seleccione Identidad.

  4. Seleccione External Identities>Flujos de usuario.

  5. Seleccione + Nuevo flujo de usuario.

  6. En la página Crear:

    1. Escriba un nombre para el flujo de usuario, como SignInSignUpSample.

    2. En la lista Proveedores de identidades, seleccione Cuentas de correo electrónico. Este proveedor de identidades permite a los usuarios iniciar sesión o registrarse con su dirección de correo electrónico y contraseña.

    3. En Cuentas de correo electrónico, puede seleccionar una de las dos opciones. En este tutorial, seleccione Correo electrónico con contraseña.

      • Correo electrónico con contraseña: permite a los nuevos usuarios registrarse e iniciar sesión con una dirección de correo electrónico como nombre de inicio de sesión y una contraseña como credencial del primer factor.
      • Código de acceso de un solo uso de correo electrónico: permite a los nuevos usuarios registrarse e iniciar sesión con una dirección de correo electrónico como nombre de inicio de sesión y un código de acceso de un solo uso como credencial de primer factor. Para que esta opción esté disponible en el nivel de flujo de usuario, asegúrese de habilitar el código de acceso de un solo uso (OTP) de correo electrónico en el nivel de inquilino (seleccione Todos los proveedores de identidades y, a continuación, para Código de acceso de un solo uso de correo electrónico seleccione Configurado, seleccione la opción , y, a continuación, seleccione Guardar).
    4. En Atributos de usuario, puede elegir los atributos que desea recopilar del usuario al registrarse. Para esta guía, seleccione País o región y Ciudad.

  7. Seleccione Crear. El nuevo flujo de usuario aparece en la lista Flujos de usuario. Si es necesario, actualice la página.

Asociar la aplicación al flujo de usuarios

Para que los usuarios del cliente vean la experiencia de registro o de inicio de sesión cuando usan la aplicación, debe asociar la aplicación a un flujo de usuario. Aunque muchas aplicaciones se pueden asociar a su flujo de usuario, una sola aplicación solo se puede asociar a un flujo de usuario.

  1. En el menú de la barra lateral, seleccione Identidad.

  2. Seleccione External Identities y, a continuación, Flujos de usuario.

  3. En la página Flujos de usuario, seleccione el nombre del flujo de usuario que creó anteriormente; por ejemplo, SignInSignUpSample.

  4. En Usar, seleccione Aplicaciones.

  5. Seleccione Agregar una aplicación.

  6. Seleccione la aplicación de la lista, como ciam-client-app, o use el cuadro de búsqueda para buscar la aplicación y selecciónela.

  7. Elija Seleccionar.

Una vez que asocie su aplicación con un flujo de usuarios, puede probar su flujo de usuarios simulando la experiencia de registro o inicio de sesión de un usuario con su aplicación desde el centro de administración de Microsoft Entra. Para ello, siga los pasos descritos en Prueba del flujo de usuario de registro e inicio de sesión.

Clonación de una aplicación macOS de ejemplo

  1. Abra Terminal y vaya a un directorio donde desea conservar el código.

  2. Clona la aplicación macOS desde GitHub mediante la ejecución del siguiente comando:

    git clone https://github.com/Azure-Samples/ms-identity-ciam-native-auth-macos-sample.git
    
  3. Navegue hasta el directorio donde se clonó el repositorio:

    cd ms-identity-ciam-native-auth-macos-sample
    

Configuración de la aplicación macOS de ejemplo

  1. En Xcode, abre el proyecto NativeAuthSampleAppMacOS.xcodeproj.

  2. Abre el archivo NativeAuthSampleAppMacOS/Configuration.swift.

  3. Busque el marcador de posición:

    • Enter_the_Application_Id_Here y reemplácelo por el identificador de aplicación (cliente) de la aplicación que registró anteriormente.
    • Enter_the_Tenant_Subdomain_Here y reemplácelo por el subdominio del directorio (inquilino). Por ejemplo, si el dominio principal de su inquilino es contoso.onmicrosoft.com, utilice Contoso. Si no tiene su subdominio de inquilino, obtenga información sobre cómo leer los datos de su inquilino.

Nota:

Recuerde seleccionar un esquema para crear y destino donde ejecutar los productos creados. Cada esquema contiene una lista de dispositivos reales o simulados que representan los destinos disponibles.

Ejecución y prueba de una aplicación macOS de ejemplo

Para compilar y ejecutar el código, seleccione Ejecutar en el menú Producto de Xcode. Después de una compilación correcta, Xcode iniciará la aplicación de ejemplo en el simulador.

Captura de pantalla de la solicitud para escribir el correo electrónico y la contraseña en la aplicación macOS.

Esta guía comprueba el uso del correo electrónico y la contraseña. Escribe una dirección de correo electrónico y una contraseña válidas, selecciona Registrarse e inicia la pantalla de envío de código:

Captura de pantalla de la solicitud para escribir un código de acceso de un solo uso (OTP) en la aplicación macOS.

Una vez introducida su dirección de correo electrónico en la pantalla anterior, la aplicación le enviará un código de verificación. Una vez que envíe el código recibido, la aplicación lo llevará de vuelta a la pantalla anterior y automáticamente iniciará sesión.

Pasos siguientes