Compartir a través de


Inicio rápido: Inicio de sesión de usuarios en una aplicación de escritorio de ejemplo

Se aplica a:Círculo verde con un símbolo de marca de verificación blanca. inquilinos de personal Círculo verde con un símbolo de marca de verificación blanca. inquilinos externos (más información)

En este inicio rápido, usará una aplicación de ejemplo para aprender a agregar autenticación a una aplicación de escritorio. La aplicación de ejemplo permite a los usuarios iniciar sesión y cerrar sesión y usar la Biblioteca de autenticación de Microsoft (MSAL) para controlar la autenticación.

Antes de empezar, use el selector Elegir un tipo de inquilino en la parte superior de esta página para seleccionar el tipo de inquilino. Microsoft Entra ID proporciona dos configuraciones de inquilino, recursos y externa. Una configuración de entorno de trabajo está destinada a los empleados, las aplicaciones internas y otros recursos de la organización. Un inquilino externo es para las aplicaciones orientadas al cliente.

Prerrequisitos

  • Una cuenta de Azure con una suscripción activa. Si no tienes una, crea una cuenta gratis.
  • Esta cuenta de Azure debe tener permisos para administrar aplicaciones. Cualquiera de los siguientes roles de Microsoft Entra incluye los permisos necesarios:
    • Administrador de aplicaciones
    • Desarrollador de aplicaciones
  • Un inquilino trabajador Puede usar el directorio predeterminado o configurar un nuevo inquilino.
  • Registre una nueva aplicación en el Centro de administración de Microsoft Entra, configurada solo para Cuentas en este directorio organizativo. Consulte Registro de una aplicación para obtener más detalles. Registre los valores siguientes en la página Información general de la aplicación para su uso posterior:
    • Id. de aplicación (cliente)
    • Id. de directorio (inquilino)

Descarga del proyecto de ejemplo

Nota:

El ejemplo de Electron proporcionado en este tutorial está diseñado específicamente para funcionar con MSAL-node. MSAL-browser no se admite en aplicaciones de Electron. Asegúrese de completar los pasos siguientes para configurar el proyecto correctamente.

  • Para clonar la muestra, abra un símbolo del sistema y desplácese hasta donde desea crear el proyecto, e introduzca el siguiente comando:

    git clone https://github.com/Azure-Samples/ms-identity-javascript-nodejs-desktop.git
    
  • Descargue el archivo .zip. Extráigalo en una ruta de archivo donde la longitud del nombre sea inferior a 260 caracteres.

Configuración del proyecto

En el editor de código, abra el archivo ms-identity-javascript-nodejs-desktop-main/App/authConfig.js . Reemplace el valor de la siguiente manera:

Variable Descripción Ejemplos
Enter_the_Cloud_Instance_Id_Here Instancia en la nube de Azure en la que se registra la aplicación https://login.microsoftonline.com/ (incluya la barra diagonal final)
Enter_the_Tenant_Info_Here Id. de inquilino o dominio principal contoso.microsoft.com o aaaabbbb-0000-cccc-1111-dddd2222eeee
Enter_the_Application_Id_Here Id. de cliente de la aplicación que ha registrado 00001111-aaaa-2222-bbbb-3333cccc4444
Enter_the_Graph_Endpoint_Here Instancia de nube de Microsoft Graph API a la que llama la aplicación https://graph.microsoft.com/ (incluya la barra diagonal final)

El archivo debe ser similar al siguiente:

const AAD_ENDPOINT_HOST = "https://login.microsoftonline.com/"; // include the trailing slash

const msalConfig = {
    auth: {
        clientId: "00001111-aaaa-2222-bbbb-3333cccc4444",
        authority: `${AAD_ENDPOINT_HOST}/aaaabbbb-0000-cccc-1111-dddd2222eeee`,
    },
    system: {
        loggerOptions: {
            loggerCallback(loglevel, message, containsPii) {
                 console.log(message);
             },
             piiLoggingEnabled: false,
             logLevel: LogLevel.Verbose,
        }
    }
}

const GRAPH_ENDPOINT_HOST = "https://graph.microsoft.com/"; // include the trailing slash

const protectedResources = {
     graphMe: {
         endpoint: `${GRAPH_ENDPOINT_HOST}v1.0/me`,
         scopes: ["User.Read"],
     }
};

module.exports = {
     msalConfig: msalConfig,
     protectedResources: protectedResources,
 };

Ejecutar la aplicación

  1. Deberá instalar las dependencias de este ejemplo una vez:

    cd ms-identity-javascript-nodejs-desktop-main
    npm install
    
  2. A continuación, ejecute la aplicación a través del símbolo del sistema o la consola:

    npm start
    
  3. Seleccione Iniciar sesión para comenzar el proceso de inicio de sesión.

    La primera vez que inicie sesión, se le pedirá que dé su consentimiento para permitir que la aplicación inicie sesión y acceda a su perfil. Una vez que haya iniciado sesión correctamente, se le redirigirá a la aplicación.

Paso siguiente

Para más información sobre el desarrollo de aplicaciones de escritorio de Electron con MSAL Node, consulte el tutorial:

Prerrequisitos

Descarga del proyecto de ejemplo

Nota:

El ejemplo de Electron proporcionado en este tutorial está diseñado específicamente para funcionar con MSAL-node. MSAL-browser no se admite en aplicaciones de Electron. Asegúrese de completar los pasos siguientes para configurar el proyecto correctamente.

Para obtener el código de ejemplo de la aplicación de escritorio, descargue el archivo .zip o clone la aplicación web de ejemplo de GitHub ejecutando el siguiente comando:

git clone https://github.com/Azure-Samples/ms-identity-ciam-javascript-tutorial.git

Si decide descargar el archivo .zip, extraiga el archivo de la aplicación de ejemplo en una carpeta donde la longitud total de la ruta de acceso no tenga más de 260 caracteres.

Instalación de dependencias del proyecto

  1. Abra una ventana de consola y cambie al directorio que contiene la aplicación Electron de ejemplo:

    cd 1-Authentication\3-sign-in-electron\App
    
  2. Ejecute los siguientes comandos para instalar las dependencias de la aplicación:

    npm install && npm update
    

Configuración de la aplicación web de ejemplo

  1. En el editor de código, abra el archivo App\authConfig.js.

  2. Busque el marcador de posición:

    1. Enter_the_Application_Id_Here y reemplázalo por el ID de cliente (aplicación) de la aplicación que registraste anteriormente.

    2. Enter_the_Tenant_Subdomain_Here y reemplácelo por el subdominio Directorio (inquilino). Por ejemplo, si el dominio principal del cliente es contoso.onmicrosoft.com, utilice contoso. Si no tiene el nombre del inquilino, aprenda a leer los detalles del inquilino.

Ejecución y prueba de la aplicación web de ejemplo

Ahora puede probar la aplicación de escritorio Electron de ejemplo. Después de ejecutar la aplicación, la ventana de la aplicación de escritorio aparece automáticamente:

  1. Ejecute el comando siguiente en el terminal:

    npm start
    

    Captura de pantalla del inicio de sesión en una aplicación de escritorio Electron.

  2. En la ventana de escritorio que aparece, seleccione el botón Iniciar sesión o Registrarse. Se abre una ventana del explorador y se le pide que inicie sesión.

  3. En la página de inicio de sesión del explorador, escriba su dirección de correo electrónico, seleccione Siguiente, escriba la contraseña y, a continuación, seleccione Iniciar sesión. Si no tiene una cuenta, seleccione el vínculo ¿No tiene una cuenta? Cree una, que inicia el flujo de registro.

  4. Si elige la opción de registro, después de rellenar el correo electrónico, el código de acceso de un solo uso, la nueva contraseña y más detalles de la cuenta, completará todo el flujo de registro. Verá una página similar a la que aparece en la siguiente captura de pantalla. Verá una página similar si elige la opción de inicio de sesión. En la página se muestran las notificaciones de identificador de token.

    Captura de pantalla de ver las notificaciones de token en una aplicación de escritorio Electron.