--- title: "Configurar la función Basic I/O" url: https://docs.catalyst.zoho.com/es/tutorials/hosted-login-app/python/configure-function/ description: "Crea una aplicación sencilla Basic o React utilizando las funcionalidades de Catalyst Hosted Authentication que proporciona registro de usuarios, inicio de sesión, restablecimiento de contraseña e implementa el inicio de sesión mediante proveedores de identidad federados populares." last_updated: 2026-03-20T16:21:56Z service: All Services type: tutorial related_links: - name: "Basic I/O Functions" url: /es/serverless/help/functions/basic-io/ - name: "Functions Directory Structure" url: /es/cli/v1/project-directory-structure/functions-directory --- # Configurar la función Ahora comenzaremos a codificar la aplicación del portal de autorización configurando el componente de la función. El [directorio de la función](https://docs.catalyst.zoho.com/es/cli/v1/project-directory-structure/functions-directory) (`functions/authorization_portal_function`) contiene: * El archivo principal de la función `main.py` * El archivo de configuración `catalyst-config.json` * Archivos de handler * El archivo [`requirements.txt`](https://docs.catalyst.zoho.com/es/cli/v1/project-directory-structure/functions-directory/#requirementstxt-file) para mencionar cualquier biblioteca externa que puedas agregar Agregarás código en el archivo `main.py`. La función Basic I/O contiene las siguientes funcionalidades: * Los detalles del usuario final se proporcionarán como entrada JSON a la función de *Custom User Validation*. * La función está codificada para implementar una lógica personalizada en base a la cual el usuario final será autenticado o denegado. > **Nota:** Para los fines de este tutorial, hemos codificado una lógica para la función de Custom User Validation donde si el proveedor de correo electrónico 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. Ahora, comencemos a codificar la función Basic I/O. Copia el código proporcionado a continuación y pégalo en el archivo `main.py` en el directorio `functions/authorization_portal_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:** Revisa el código en esta sección para asegurarte de que lo comprendes completamente. **main.py** ```javascript import json import zcatalyst_sdk def handler(context, basicio): catalyst_app = zcatalyst_sdk.initialize() auth_service = catalyst_app.authentication() request_details = auth_service.get_signup_validation_request(basicio) if request_details: if "@zylker.com" in request_details["user_details"]["email_id"]: basicio.write(json.dumps({"status": "failure"})) // El usuario no ha pasado la autenticación else: // Las acciones que ocurren en caso de una autenticación exitosa pueden personalizarse basicio.write( json.dumps( { "status": "success", "user_details": { "first_name": request_details["user_details"]["first_name"], "last_name": request_details["user_details"]["last_name"], "email_id": request_details["user_details"]["email_id"], "role_identifier": "App User", // Si deseas sobrescribir el rol predeterminado, puedes especificar el id/nombre del rol aquí. 'org_id': "orgId" // Si proporcionas el Org ID, asegúrate de copiarlo exactamente desde la consola. }, } ) ) context.close() ``` > **Nota:** También puedes usar este [SDK](https://docs.catalyst.zoho.com/es/sdk/python/v1/cloud-scale/authentication/custom-user-validation/) para codificar tu propia lógica personalizada en lugar de la implementada anteriormente. El directorio de la función ahora está configurado. Podemos proceder a configurar el directorio del cliente.