Note:

Escritura de eventos en un flujo privado de OCI mediante OCI Events Service y OCI Functions

Introducción

Las reglas del servicio Oracle Cloud Infrastructure (OCI) Events realizan un seguimiento de los cambios de recursos en OCI mediante eventos que cumplen con el estándar CloudEvents de Cloud Native Computing Foundation (CNCF). Esto permite a los desarrolladores responder a cambios en tiempo real mediante el disparo de código con OCI Functions, la escritura de datos en OCI Streaming o el envío de alertas mediante OCI Notifications.

Aunque el envío de eventos a flujos públicos está soportado de forma nativa, la escritura en un flujo privado requiere un enfoque personalizado mediante OCI Functions o código personalizado. En este tutorial se muestra el uso de OCI Functions para capturar cargas útiles de eventos de una regla de OCI Events Service y escribirlas en un flujo privado.

Objetivo

Requisitos

Tarea 1: Configuración de las políticas necesarias y los permisos de Oracle Cloud Infrastructure Identity and Access Management (OCI IAM)

Cada componente de esta solución debe tener acceso a los recursos de OCI con los que interactúa. Para seguir este tutorial, el desarrollador debe tener los siguientes permisos.

Las políticas detalladas se pueden encontrar aquí:

Tarea 2: Creación de un flujo privado

OCI Streaming es un servicio OCI totalmente gestionado en el que los datos se cifran estáticos y en tránsito, lo que garantiza la integridad y seguridad de los mensajes. Para mejorar la seguridad, puede utilizar el servicio OCI Vault para almacenar y gestionar sus propias claves de cifrado, cumpliendo requisitos específicos de conformidad o seguridad. Los puntos finales privados se pueden configurar en una red virtual en la nube (VCN) para proteger aún más sus flujos, asociando una dirección IP privada al pool de flujos. Esto garantiza que el tráfico de OCI Streaming permanezca dentro de la VCN, evitando Internet por completo. Sin embargo, tenga en cuenta que no se puede acceder a los flujos que utilizan puntos finales privados desde Internet, lo que también limita la capacidad de ver sus últimos mensajes a través de la consola. Para consumir mensajes de un flujo privado, el consumidor debe tener acceso y ruta a la red donde se aloja el flujo privado.

Crear un flujo y un pool de flujos. Introduzca Stream Name y seleccione Create New Stream Pool para crear el pool de flujos. En la sección Configurar pool de flujos, introduzca Nombre de pool de flujos, seleccione Punto final privado e introduzca VCN y Subred y los detalles de red según corresponda. Aunque es opcional, recomendamos proporcionar a un grupo de seguridad de red una regla de entrada para todo el tráfico dentro de ese NSG. Para obtener más información, consulte Creación de flujo y Creación de pool de flujos.

Imagen de la regla de NSG

Imagen de la creación de un flujo y un pool de flujos

Puede utilizar sus propias claves de cifrado para obtener un mayor control sobre el ciclo de vida de la clave. Tiene la opción de ajustar la retención de mensajes en el flujo. El valor por defecto es 1 día y el máximo es 7 días.

Imagen del cifrado de flujo

Imagen del pool de flujos

Anote el OCID de flujo y el punto final de mensajes. Necesitamos pasar esta información a la función.

Tarea 3: Crear tema de notificaciones de OCI y regla del servicio OCI Events

Como repaso, así es como funciona un evento. Los servicios de OCI emiten eventos para recursos o datos. Creamos reglas, que incluyen un filtro para especificar los eventos de interés. Las reglas deben disparar una acción cuando el filtro encuentra un evento coincidente. La acción puede ser un tema de OCI Notifications, un servicio OCI Streaming o OCI Functions.

En este tutorial, exploraremos el enfoque 3, que es el más complejo.

  1. Cree un tema de OCI Notifications. Para obtener más información, consulte Creación de un tema.

    Imagen del tema de notificación

  2. Cree una regla de evento. Para justificar el enfoque, crearemos dos reglas de eventos. Para obtener más información, consulte Creating an Events Rule.

    Imagen del evento CG

    Imagen del evento de identidad

Tarea 4: Desarrollo y despliegue de la función

Esta función codifica la carga útil del evento y la publica en el punto final y el flujo de mensajes proporcionados. Para obtener más información, consulte Creación de funciones.

Imagen del Fn

El paso final es indicar a la función dónde está el flujo privado. Esta función utiliza parámetros de configuración, por lo que es reutilizable si desea desplegar en otro arrendamiento.

Imagen de la configuración de Fn

Tarea 5: Suscripción de la función al tema de notificaciones

En esta tarea, suscriba la función desplegada al tema OCI Notifications. Cuando el tema OCI Notifications reciba un mensaje, disparará la función y la función escribirá la carga útil del evento para un flujo privado.

Puede eliminar o mejorar determinados campos modificando el código de función para cumplir los requisitos. La confirmación no es necesaria para las suscripciones de función. Para obtener más información, consulte Creación de una suscripción de función.

Imagen de la suscripción

Imagen de Subscription2

Verificación

Hay varios lugares donde se puede verificar el flujo de datos.

  1. Verifique la página de métricas de eventos para comprobar si algún evento coincide con la regla proporcionada. El gráfico de fallos debe estar vacío.

    Imagen de las métricas del evento

  2. Compruebe las métricas del tema OCI Notifications. Asegúrese de que se entregan todos los mensajes; no hay datos en los gráficos de mensajes con fallos.

    Imagen de las métricas de notificaciones

  3. Compruebe las métricas de la función Llamada. Asegúrese de que no hay errores y de que la función no está limitando.

    Imagen de las métricas de Fn

  4. Compruebe que los datos se están ingiriendo en el flujo privado.

Imagen de las métricas de flujo

Si los datos están ausentes en cualquiera de los siguientes gráficos, deténgase allí y active los logs para ese servicio. Los logs explicarán por qué un recurso específico no puede realizar la tarea.

Pasos Siguientes

En este tutorial, ha aprendido a integrar OCI Events Service, OCI Notifications, OCI Functions y OCI Streaming para procesar y publicar cargas útiles de eventos de forma segura en flujos privados. Ha explorado la configuración de puntos finales seguros, la gestión de claves de cifrado y el uso de OCI IAM para un control de acceso detallado a fin de garantizar que solo los usuarios y servicios autorizados puedan interactuar con los datos de flujo.

Esta solución permite a los equipos capturar los cambios de recursos en tiempo real y, al mismo tiempo, mantener estándares de seguridad sólidos. Las organizaciones pueden utilizar flujos privados para salvaguardar datos confidenciales, cumplir con las regulaciones del sector y garantizar que los flujos de trabajo operativos se alineen con los objetivos de seguridad y cumplimiento de la organización. Este enfoque fortalece su postura de seguridad y permite a su equipo lograr una automatización fluida y segura basada en eventos.

Para obtener más información sobre el uso de OCI Functions y las capacidades de flujos privados de OCI, póngase en contacto con su representante de Oracle o consulte Soluciones de seguridad en la nube.

Agradecimientos

Más recursos de aprendizaje

Explore otros laboratorios en docs.oracle.com/learn o acceda a más contenido de formación gratuita en el canal YouTube de Oracle Learning. Además, visita education.oracle.com/learning-explorer para convertirte en un Oracle Learning Explorer.

Para obtener documentación sobre el producto, visite Oracle Help Center.