Acceso tradicional a las aplicaciones:
Tradicionalmente, se accede a las aplicaciones, ya sean servicios SaaS o aplicaciones empresariales, a través de API como RESTful API y gRPC. Incluso el acceso basado en navegador a estas aplicaciones aprovecha las API a través de JavaScript. Normalmente, para cada recurso que expone la aplicación, existe un punto final de API correspondiente con métodos HTTP para realizar diversas operaciones en el recurso. Para ilustrarlo, consideremos una sencilla aplicación SaaS de recursos humanos. Esta aplicación gestiona varios recursos como empleados, departamentos y nóminas. He aquí algunos de los recursos clave y sus correspondientes puntos finales de API:
- Empleados: GET /api/employees – Recuperar una lista de todos los empleados; POST /api/employees – Añadir un nuevo empleado; GET /api/employees/{id} – Recuperar los detalles de un empleado específico; PUT /api/employees/{id} – Actualizar los detalles de un empleado específico; DELETE /api/employees/{id} – Eliminar un empleado específico.
- Departamentos: GET /api/departments – Recupera una lista de todos los departamentos; POST /api/departments – Añade un nuevo departamento; GET /api/departments/{id} – Recupera los detalles de un departamento específico; PUT /api/departments/{id} – Actualiza los detalles de un departamento específico; DELETE /api/departments/{id} – Elimina un departamento específico.
- Nóminas: GET /api/payrolls – Recuperar una lista de todos los registros de nóminas; POST /api/payrolls – Crear un nuevo registro de nóminas; GET /api/payrolls/{id} – Recuperar los detalles de un registro de nóminas específico; PUT /api/payrolls/{id} – Actualizar los detalles de un registro de nóminas específico; DELETE /api/payrolls/{id} – Eliminar un registro de nóminas específico.
En este ejemplo, hay tres puntos finales de API: empleados, departamentos y nóminas.
Seguridad de confianza cero
La seguridad de confianza cero que utiliza tecnologías SASE/SSE y de malla de servicios funciona con reglas, en las que cada regla proporciona un acceso específico del contexto a los puntos finales y métodos de la API. El contexto incluye las reivindicaciones JWT de los usuarios que acceden a los recursos; el contexto de red desde el que el usuario accede a los recursos de la aplicación; la postura del dispositivo del punto final desde el que el usuario accede a los recursos de la aplicación; las ubicaciones geográficas de los usuarios; los días de acceso; las horas de acceso; y otros factores relevantes. He aquí algunos ejemplos de reglas que ilustran la Seguridad de Confianza Cero para la aplicación de RR.HH:
- Regla: Acceso a los datos de los empleados – Los responsables de RR.HH. que accedan desde la red corporativa en dispositivos compatibles pueden recuperar listas de empleados (GET: /api/empleados) y detalles de empleados concretos (GET: /api/empleados/{id}).
- Regla: Gestión de departamentos – Los administradores que accedan desde cualquier red en dispositivos compatibles dentro del país en días laborables entre las 9 AM y las 6 PM pueden añadir (POST: /api/departments), actualizar (PUT: /api/departments/{id}), o eliminar (DELETE: /api/departments/{id}) detalles de departamentos.
- Regla: Creación de registros de nóminas – Los especialistas en nóminas que accedan desde la VPN corporativa en dispositivos compatibles dentro de las instalaciones de la oficina pueden crear (POST: /api/payrolls), actualizar (PUT: /api/payrolls/{id}), recuperar detalles de (GET: /api/payrolls/{id}) o eliminar (DELETE: /api/payrolls/{id}) registros de nóminas específicos.
Estas reglas garantizan que el acceso a los recursos se conceda en función de una combinación de la identidad del usuario, el contexto de la red, la conformidad del dispositivo, la ubicación y las limitaciones temporales, haciendo realidad los principios de la seguridad de confianza cero.
Significado de los puntos finales y métodos de la API
Como ve, la granularidad de los puntos finales de la API permite controles de acceso granulares. Los puntos finales de la API reflejan los recursos de las aplicaciones, lo que permite una gestión precisa del acceso. Algunas aplicaciones pueden no utilizar puntos finales URL para cada recurso; en su lugar, pueden utilizar cabeceras de solicitud HTTP para indicar el recurso al que se accede y, en algunos casos, el propio recurso se menciona explícitamente como parte del cuerpo JSON de la API. En cualquier caso, las API sirven como interfaces para los recursos desempeñan un papel crucial en la seguridad. Permiten a las entidades de seguridad intermedias, como los proxies inversos, las pasarelas de seguridad API y los CASB/ZTNA de los sistemas SASE/SSE, extraer el recurso gestionado de los elementos del protocolo HTTP. A continuación, estos sistemas aplican reglas específicas del contexto para determinar si permiten que esa sesión HTTP siga adelante. Este proceso garantiza que cada solicitud se evalúe en tiempo real en función del contexto actual, mitigando eficazmente los riesgos y protegiendo los datos sensibles.
GenAI está cambiando la forma de acceder a las aplicaciones
Las aplicaciones SaaS y empresariales están evolucionando para aceptar entradas de lenguaje natural para la gestión de recursos. Esto significa disponer de un único punto final de API que pueda interpretar y procesar texto natural, audio o imágenes para realizar operaciones sobre los recursos. Por ejemplo, una aplicación de recursos humanos podría tener un punto final de API en el que los usuarios pudieran introducir su intención en lenguaje natural. A continuación, la aplicación interpretaría esta intención, ejecutaría internamente las operaciones necesarias y devolvería los resultados. Si se necesita más claridad o más información, el sistema puede pedir más información al usuario. He aquí algunos ejemplos de avisos en lenguaje natural que ilustran cómo pueden realizarse diversas operaciones:
- Prompt natural: «Muéstreme la lista de todos los empleados»
- Prompt natural: «Deme los datos del empleado ID 123» 2. Gestión de departamentos
- Prompt natural: «Añadir un nuevo departamento llamado ‘Marketing'»
- Pregunta natural: «Actualice el nombre del departamento ID 456 a ‘Ventas'»
- Pregunta Natural: «Eliminar el departamento con ID 789» 3. Creación del registro de nóminas:
- Pregunta natural: «Crear un registro de nómina para el empleado ID 123»
- Pregunta natural: «Actualizar el registro de nómina ID 456 con nuevos detalles»
- Prompt natural: «Muéstreme el registro de nóminas del ID 789»
- Pregunta natural: «Borrar el registro de nómina ID 101112»
Estos ejemplos demuestran que las indicaciones en lenguaje natural pueden sustituir la necesidad de llamar directamente a las API de nivel de recursos.
Evolución de las aplicaciones
Antes de hablar de los retos de seguridad, veamos algunas de las formas en que están evolucionando las aplicaciones.
Aplicaciones tradicionales con sus propias interfaces GenAI
Las aplicaciones tradicionales con acceso basado en el lenguaje natural están transformando la forma en que los usuarios interactúan con el software. Las aplicaciones SaaS y empresariales existentes siguen proporcionando un acceso tradicional a la API a nivel de recursos; sin embargo, ahora están mejoradas para admitir un acceso basado en IA generativa. Este enfoque permite a los usuarios gestionar los recursos mediante indicaciones en lenguaje natural, lo que hace que las interacciones sean más intuitivas y fáciles de usar. Estas aplicaciones suelen incluir sus propias interfaces gráficas de usuario (GUI) para el chat, que permiten relacionar en un amplio contexto de memoria varias indicaciones relacionadas. Esto significa que el software puede entender y recordar el flujo de la conversación, proporcionando respuestas más precisas y pertinentes a las consultas de los usuarios. Al integrar el procesamiento del lenguaje natural, estas aplicaciones pueden descomponer operaciones complejas en órdenes sencillas y conversacionales. Por ejemplo, en lugar de introducir datos manualmente o utilizar complejas llamadas a la API, los usuarios pueden decir simplemente: «Crear un registro de nómina para el ID de empleado 123», y el sistema entenderá y ejecutará la solicitud sin problemas.
Las aplicaciones tradicionales se amplían con soluciones de proveedores establecidos de IA Generativa
En los últimos avances, los proveedores de servicios de IA generativa como ChatGPT están mejorando las aplicaciones tradicionales mediante la incorporación de características como la llamada a funciones y los plugins. Estas mejoras permiten a las aplicaciones existentes interactuar sin problemas con ChatGPT e interfaces similares. Esencialmente, los proveedores de servicios GenAI captan las peticiones de los usuarios a través de sus interfaces, interpretan la intención subyacente e identifican los plugins apropiados para satisfacer estas peticiones generando y ejecutando llamadas a API RESTful o a través de nuevas peticiones a sistemas backend. El resultado se comunica entonces al usuario en lenguaje natural, haciendo que el proceso sea intuitivo y fácil de usar. Por ejemplo, en lugar de navegar por múltiples interfaces para realizar operaciones, los usuarios pueden permanecer dentro del entorno ChatGPT y ejecutar comandos a través de una sencilla interfaz conversacional. ChatGPT, que ya admite más de 800 plugins, permite a varios proveedores de aplicaciones SaaS registrar sus servicios como plugins. Esta integración significa que los usuarios no necesitan cambiar de pestaña ni abandonar la interfaz ChatGPT para realizar las tareas cubiertas por estos plugins.
Agentes de IA y flujos de trabajo agénticos
A medida que las aplicaciones siguen evolucionando, los Agentes de IA con flujos de trabajo agénticos surgen como otra tendencia transformadora. Estos Agentes de IA están diseñados para operar de forma autónoma, gestionando tareas y flujos de trabajo en nombre de los usuarios con una intervención mínima. Al aprovechar algoritmos avanzados de aprendizaje automático y sofisticados modelos de IA, estos agentes pueden ejecutar una amplia variedad de tareas, lo que los hace indispensables en los ecosistemas de aplicaciones modernos. Los agentes de IA se integran perfectamente en las aplicaciones existentes, mejorando sus capacidades mediante la automatización de tareas rutinarias y la optimización de los flujos de trabajo. Por ejemplo, en una aplicación de atención al cliente, un agente de IA puede gestionar de forma autónoma consultas comunes, procesar solicitudes e incluso derivar cuestiones complejas a agentes humanos cuando sea necesario. Esto no sólo mejora la eficiencia, sino que también garantiza una experiencia de usuario coherente y de alta calidad. Estos agentes están dotados de la capacidad de aprender de las interacciones, mejorando continuamente su rendimiento y adaptándose a las preferencias de los usuarios. Esto significa que, con el tiempo, los agentes de IA pueden anticiparse a las necesidades de los usuarios y gestionar las tareas de forma proactiva, simplificando aún más las operaciones y reduciendo la carga cognitiva de los usuarios. Pueden interactuar con varios sistemas y aplicaciones, creando un entorno cohesivo e integrado en el que los datos y las acciones fluyen sin problemas. Una de las principales ventajas de los agentes de IA es su capacidad para operar dentro de unas limitaciones y objetivos definidos, a menudo denominados flujos de trabajo agénticos. Esto les permite ejecutar tareas de una manera orientada a los objetivos, asegurando que las acciones estén alineadas con las prioridades definidas por el usuario y los objetivos de la organización. Por ejemplo, un agente de IA en una herramienta de gestión de proyectos puede asignar tareas de forma autónoma, realizar un seguimiento del progreso y proporcionar actualizaciones basadas en los objetivos y plazos del proyecto. Los agentes de IA pueden ayudar en la coordinación y comunicación entre diferentes aplicaciones y servicios. Funcionan como intermediarios que interpretan las indicaciones del lenguaje natural y las traducen en acciones ejecutables a través de múltiples sistemas. Los agentes de IA utilizan modelos de razonamiento para crear planes que constan de varias tareas basadas en la intención del usuario y luego ejecutan estas tareas comunicándose con diferentes complementos y aplicaciones. Esta capacidad es especialmente beneficiosa en entornos en los que los usuarios necesitan interactuar con múltiples herramientas y plataformas.
Las implementaciones convencionales de la Seguridad de Confianza Cero son inadecuadas
Como se describe en la sección «Seguridad de confianza cero», las implementaciones convencionales de seguridad de red de confianza cero asumen que todo el acceso a las aplicaciones se realiza a través de API específicas de recursos y acciones HTTP convencionales. Las soluciones CASB y ZTNA existentes entran dentro de estas implementaciones convencionales de seguridad de confianza cero. Con la llegada de la GenAI y sus interacciones basadas en el lenguaje natural, las implementaciones de seguridad deben evolucionar. Las API tradicionales y los cuerpos JSON/XML se están complementando con entradas y salidas de lenguaje natural, lo que requiere un análisis más profundo para discernir la intención del usuario y los resultados. Las reglas de seguridad ya no pueden basarse únicamente en puntos finales y elementos del cuerpo específicos de la API; ahora deben desarrollarse con una comprensión de la intención del usuario para aplicar controles de acceso granulares, específicos del contenido y del contexto. Por ejemplo, imagine a un usuario interactuando con una aplicación de nóminas a través de ChatGPT o con su propia interfaz de chat. En lugar de una llamada directa a la API con parámetros fijos, el usuario podría decir: «Muéstrame los registros de nóminas del último trimestre». El sistema de seguridad debe interpretar esta solicitud en lenguaje natural y garantizar que la solicitud y la respuesta se ajustan a las políticas de seguridad de la empresa. Esto requiere una comprensión matizada tanto del contexto de la solicitud como de las restricciones de seguridad específicas implicadas. Por lo tanto, los modelos de seguridad de confianza cero en evolución deben incluir mecanismos para analizar y comprender las entradas de lenguaje natural, garantizando que los controles de acceso sigan siendo sólidos y contextualmente relevantes en la era de la GenAI.