--- title: "Habilitar Custom User Validation" url: https://docs.catalyst.zoho.com/es/tutorials/birthday-greetings/nodejs/enable-custom-logic/ description: "Construye una aplicación de saludos de cumpleaños usando el servicio Job Scheduling y envía automáticamente saludos de cumpleaños a la persona requerida a través de su correo electrónico." last_updated: 2026-08-17T12:16:04Z service: All Services type: tutorial related_links: - name: "Authentication" url: /es/cloud-scale/help/authentication/introduction/ - name: "Authentication SDK" url: /es/sdk/nodejs/v2/cloud-scale/authentication/get-component-instance/ - name: "Whitelisting" url: /es/cloud-scale/help/authentication/whitelisting/introduction/ - name: "Custom User Validation" url: /es/cloud-scale/help/authentication/whitelisting/custom-user-validation/introduction/ --- # Habilitar Custom User Validation ### Codificar tu lógica de autenticación personalizada Ahora, codificaremos nuestra lógica personalizada que debe emplearse cuando un usuario final intenta registrarse en tu aplicación. El [directorio de funciones](https://docs.catalyst.zoho.com/es/cli/v1/project-directory-structure/functions-directory/), `BirthdayGreetings/functions/basic_function/` contiene: * El archivo principal de la función `index.js` * El archivo de configuración `catalyst-config.json` * Módulos de Node * Archivos de dependencias [`package.json`](https://docs.npmjs.com/files/package.json) y [`package-lock.json`](https://docs.npmjs.com/configuring-npm/package-lock-json.html). Agregarás código en el archivo `index.js`. La función contiene las siguientes funcionalidades: * Los detalles del usuario final serán proporcionados como una entrada JSON a la función de Custom User Validation. * La función está codificada para implementar una lógica personalizada basada en la cual el usuario final será autenticado o denegado. > **Nota:** Para los propósitos de este tutorial, hemos codificado una lógica de ejemplo para la función de Custom User Validation donde si el proveedor de correo del usuario es diferente a Zylker Technology (`@zylker.com`), el usuario final no podrá registrarse en la aplicación. Puedes usar la misma o codificar una lógica de tu preferencia. Copia el código dado a continuación y pégalo en el archivo `index.js` en el directorio `BirthdayGreetings/functions/basic_function` de tu proyecto, y guarda el archivo. Puedes usar cualquier IDE de tu preferencia para trabajar con los archivos de la aplicación. > **Nota:** Por favor revisa el código en esta sección para asegurarte de que lo comprendes completamente. **index.js** ```javascript const catalyst = require('zcatalyst-sdk-node') module.exports = (context, basicIO) => { const catalystApp = catalyst.initialize(context) const requestDetails = catalystApp.userManagement().getSignupValidationRequest(basicIO) if (requestDetails) { if (requestDetails.user_details.email_id.includes('@zylker.com')) { basicIO.write(JSON.stringify({ status: 'success', user_details: { first_name: requestDetails.user_details.first_name, last_name: requestDetails.user_details.last_name, email_id: requestDetails.user_details.email_id, role_identifier: 'App User', org_id: '' } })) } else { // El usuario no pasó la autenticación basicIO.write(JSON.stringify({ status: 'failure' })) } } context.close() } ``` > **Notas:** * Asegúrate de cambiar el nombre de dominio en la línea `6` con uno que coincida con tu requisito. * También puedes usar este [SDK](https://docs.catalyst.zoho.com/es/sdk/nodejs/v2/cloud-scale/authentication/custom-user-validation/) para codificar tu propia lógica personalizada en lugar de la implementada arriba. ### Desplegar la función y configurar Custom User Validation Para aplicar esta lógica personalizada, necesitamos desplegar esta función a la consola para asegurar que esté disponible para habilitar la opción de Custom User Validation presente en la consola. Para desplegar la función, ejecuta el siguiente comando CLI para [desplegar solo el componente de funciones](https://docs.catalyst.zoho.com/es/cli/v1/deploy-resources/deploy-options/#--only-lttargetsgt) a la consola. ```sh catalyst deploy --only functions ``` > **Info:** También puedes elegir alternativamente desplegar solo la función de Custom User Validation usando el siguiente comando: `catalyst deploy --only functions:function_name` ![catalyst_tutorials_jobscheduling_deploy_only_func](https://catalyst-docs-development.zohostratus.in/images/tutorials/birthday-greetings/catalyst_tutorials_jobscheduling_deploy_only_func.webp) Se crearán endpoints de función para todas las funciones. Esto te permitirá acceder a las funciones directamente. Las funciones serán desplegadas a la consola. Se puede acceder a ellas en la consola usando el componente Functions en la sección Serverless de la consola. ![catalyst_tutorials_jobscheduling_serverless_func_view](https://catalyst-docs-development.zohostratus.in/images/tutorials/birthday-greetings/catalyst_tutorials_jobscheduling_serverless_func_view.webp) > **Nota:** Si bien hemos desplegado todas las funciones del proyecto a la consola, las redesplegaremos una vez más después de codificar las funciones de **Advanced I/O** y **Job**. Ahora, ve al componente **Authentication** presente en la sección *Cloud Scale* de la consola e implementa los siguientes pasos: 1. Navega a la sección **Whitelisting** en el componente *Authentication* y haz clic en el toggle de **Custom User Validation**. ![catalyst_tutorials_jobscheduling_authentication_csu_start](https://catalyst-docs-development.zohostratus.in/images/tutorials/birthday-greetings/catalyst_tutorials_jobscheduling_authentication_csu_start.webp) 2. Selecciona la función **Basic I/O** del menú desplegable en la ventana emergente. ![catalyst_tutorials_jobscheduling_authentication_csu_func_sel](https://catalyst-docs-development.zohostratus.in/images/tutorials/birthday-greetings/catalyst_tutorials_jobscheduling_authentication_csu_func_sel.webp) 3. Haz clic en **Configure**. ![catalyst_tutorials_jobscheduling_authentication_csu_cmpltd](https://catalyst-docs-development.zohostratus.in/images/tutorials/birthday-greetings/catalyst_tutorials_jobscheduling_authentication_csu_cmpltd.webp) La función de Custom User Validation ha sido habilitada para el proyecto, y los usuarios finales que se registren en tu aplicación ahora serán autenticados adicionalmente usando esta función. > **Nota:** Puedes conocer todas las características presentes en el formulario de la sección Whitelisting en este [documento de ayuda](https://docs.catalyst.zoho.com/es/cloud-scale/help/authentication/whitelisting/introduction/).