Note:

Optimice la supervisión continua de bases de datos automatizando el registro de Oracle Data Safe con la CLI de OCI

Introducción

Mantener una sólida postura de ciberseguridad para las bases de datos de Oracle es esencial en el complejo entorno de amenazas actual. La supervisión continua es clave para identificar de forma proactiva vulnerabilidades, configuraciones erróneas y amenazas potenciales antes de que se puedan explotar. A medida que las amenazas cibernéticas se vuelven más sofisticadas y específicas, las evaluaciones periódicas para el cumplimiento, las actividades inusuales y el acceso no autorizado son cada vez más cruciales.

El registro manual de varias bases de datos en Oracle Data Safe mediante la consola de Oracle Data Safe puede requerir mucho trabajo y mucho tiempo. Este tutorial ofrece un enfoque optimizado para automatizar el proceso de registro mediante comandos y scripts de la interfaz de línea de comandos de Oracle Cloud Infrastructure (OCI CLI) dentro de la interfaz de OCI Cloud Shell, lo que reduce significativamente el esfuerzo y el tiempo manuales necesarios.

Navegar a compartimentos

Público Objetivo

Objetivos

Requisitos

Tarea 1: Acceso a OCI Cloud Shell

Acceda a OCI Cloud Shell para utilizar sus capacidades integradas.

  1. Conéctese a la consola de OCI.

    Navegar a compartimentos

  2. Haga clic en el icono de Cloud Shell/Code Editor en la cabecera de la consola y seleccione Cloud Shell en el menú desplegable. Tenga en cuenta que la CLI de OCI que se ejecuta en OCI Cloud Shell ejecutará comandos con la región seleccionada en el menú de selección de región de consola cuando se inició OCI Cloud Shell.

    Seleccione Create Compartment

Tarea 2: Creación de puntos finales privados para bases de datos de destino

Oracle Data Safe soporta la conectividad a bases de datos de Oracle mediante direcciones IP públicas o privadas. Para bases de datos con direcciones IP privadas, tiene dos opciones: un punto final privado de Oracle Data Safe o un conector local de Oracle Data Safe. En este tutorial, nos centraremos en la creación de puntos finales privados para registrar bases de datos DBaaS.

Nombre del script: generate_private_endpoints_and_commands_for_missing_vcns.sh.

Descripción: este script identifica las VCN en un compartimento de OCI especificado que carecen de puntos finales privados de Oracle Data Safe. Genera un archivo CSV que muestra las VCN que faltan y sus subredes asociadas y crea un script de shell que contiene comandos de la CLI de OCI para crear los puntos finales privados necesarios para cada VCN.

Realice los pasos:

  1. Solicite al usuario el OCID del compartimento.

  2. Identifique las VCN a las que les faltan puntos finales privados de Oracle Data Safe.

  3. Muestre las VCN que faltan y sus subredes asociadas.

  4. Genere un archivo CSV denominado list_vcns_without_private_endpoints.csv con detalles de las redes virtuales en la nube y las subredes que faltan.

  5. Cree un script de shell denominado create_private_endpoints_commands.sh que contenga comandos de la CLI de OCI para crear puntos finales privados para las VCN identificadas.

Salida de ejemplo:

Seleccione Create Compartment

Tarea 3: Generación de credenciales de base de datos de destino en formato JSON

En este tutorial, se utiliza una única cuenta de servicio de Oracle Data Safe en todas las bases de datos de destino. Por lo tanto, el archivo JSON de credenciales de base de datos será el mismo para todas las bases de datos de destino.

Nombre del script: generate_target_db_credentials.sh.

Descripción: este script solicita al usuario que introduzca un nombre de usuario y una contraseña y, a continuación, crea un archivo JSON denominado Credentials_Target_DBaaS.json que contiene las credenciales proporcionadas. El archivo JSON se utiliza para almacenar de forma segura el nombre de usuario y la contraseña de la base de datos de destino.

Realice los pasos:

  1. Solicite al usuario que introduzca un nombre de usuario.

  2. Solicite al usuario que introduzca una contraseña.

  3. Cree un archivo JSON denominado Credentials_Target_DBaaS.json que contenga el nombre de usuario y la contraseña.

Salida de script de ejemplo:

Seleccione Create Identity Domain

Tarea 4: Generar opciones de conexión de punto final privado en formato JSON

Nombre del script: generate_Connection_Options_private_endpoints.sh.

Descripción: este script automatiza el proceso de enumeración de VCN, subredes y puntos finales privados de Oracle Data Safe en un compartimento de OCI. Genera un archivo CSV que contiene información detallada sobre cada punto final privado, incluidos los nombres de subred y VCN asociados, y crea archivos JSON individuales para cada punto final para definir las opciones de conexión de Oracle Data Safe.

Realice los pasos:

  1. Solicite al usuario el ID de compartimento.

  2. Muestre todas las redes virtuales en la nube y guarde la salida en vcn_list.txt.

  3. Muestre todas las subredes y guarde la salida en subnet_list.txt.

  4. Muestre todos los puntos finales privados de Oracle Data Safe y guarde la salida en PE_list.txt.

  5. Genere un archivo CSV denominado list_All_private_endpoints_details.csv con información detallada sobre cada punto final privado.

  6. Cree archivos JSON para cada punto final privado para especificar las opciones de conexión de Oracle Data Safe.

Salida de script de ejemplo:

Seleccione Create Identity Domain

Tarea 5: Registro de bases de datos autónomas en Oracle Data Safe

Al registrar una instancia de Oracle Autonomous Database Serverless con Secure Access from Everywhere, no es necesario que seleccione una opción de conectividad ni especifique los detalles de la cuenta de servicio, ya que se incluyen por defecto. En este tutorial, demostramos cómo gestionar y registrar Oracle Autonomous Database Serverless.

Nombre del script: generate_Autonomous_database_details_with_data_safe.sh.

Descripción: este script automatiza el proceso de mostrar las bases de datos autónomas de Oracle en un compartimento de OCI y comprobar su estado de registro de Oracle Data Safe. Genera un archivo CSV que contiene detalles de todas las bases de datos autónomas de Oracle y crea archivos JSON para bases de datos que no están registradas con Oracle Data Safe. Además, el script prepara los comandos de registro de Oracle Data Safe para cada base de datos no registrada y los guarda en un script de shell. Esto permite a los usuarios registrar rápidamente bases de datos no registradas mediante la ejecución de los comandos generados.

Realice los pasos:

  1. Petición de datos de ID de compartimento.

  2. Genere un archivo CSV con los detalles de Oracle Autonomous Database.

  3. Cree archivos JSON para bases de datos no registradas.

  4. Prepare los comandos de registro de Oracle Data Safe en un script de shell.

  5. Ejecute los comandos de registro para registrar las bases de datos.

Salida de script de ejemplo:

Seleccione Create Identity Domain

Tarea 6: Registro de bases de datos de Oracle Cloud en Oracle Data Safe

Nombre del script: generate_Cloud_database_details_with_data_safe.sh.

Descripción: automatiza la extracción y el procesamiento de los detalles de la base de datos en la nube de Oracle y sus puntos finales privados, creando archivos de configuración de JSON y generando comandos de registro para Oracle Data Safe.

Realice los pasos:

  1. Petición de datos de ID de compartimento.

  2. Muestre las bases de datos DBaaS y guárdelas en Output1.txt.

  3. Agregue ID de subred para las bases de datos que carecen de ID de cluster de VM e ID de sistema de base de datos.

  4. Guarde los resultados en Oracle_Cloud_Databases_Details.csv.

  5. Muestre los puntos finales privados y guárdelos en Datasafe_Private-Endpoint_List.txt.

  6. Genere archivos JSON para cada nombre de PDB.

  7. Cree comandos de registro en Datasafe_CloudDB_Registration_Commands.sh.

Salida de script de ejemplo:

Seleccione Create Identity Domain

Tarea 7: Actualización de los programas de seguridad y evaluación de usuario

Puede configurar programas para guardar automáticamente las últimas evaluaciones de seguridad y usuario para las bases de datos de destino en un compartimento designado en OCI. Para obtener más información, consulte Programación de evaluaciones de seguridad y Programación de evaluaciones de usuario.

Nombre del script: generate_datasafe_assessment_schedules.sh.

Descripción: este script de shell está diseñado para automatizar el proceso de recuperación de bases de datos de destino de Oracle Data Safe, sus evaluaciones de usuario y seguridad correspondientes y la generación de programas de actualización para OCI. El script solicita al usuario un ID de compartimento, recupera las bases de datos de destino activas en Oracle Data Safe y genera dos scripts de programa de actualización: uno para evaluaciones de seguridad y otro para evaluaciones de usuario.

Realice los pasos:

  1. Petición de datos de ID de compartimento.

  2. Introduzca el ID de compartimiento.

  3. Mostrar destinos activos: guarde en Datasafe_Active_TargetDB_list.txt.

  4. Recuperar evaluaciones: agregue detalles a Datasafe_Active_TargetDBs.txt.

  5. Generar scripts: cree schedule_security_assessments.sh y schedule_user_assessments.sh.

Salida de script de ejemplo:

Seleccione Create Identity Domain

Tarea 8: Iniciar la recopilación de logs de auditoría para las bases de datos de destino

Cuando se registra una base de datos de destino, Oracle Data Safe detecta automáticamente las pistas de auditoría disponibles y crea un recurso de pista de auditoría correspondiente para cada base de datos de destino. Una vez iniciada la recopilación de pistas de auditoría, Oracle Data Safe copia los registros de auditoría de la base de datos de destino en su repositorio para la supervisión y el análisis. Puede controlar la recopilación de datos de auditoría iniciándola o parándola según sea necesario. Para obtener más información, consulte Pistas de auditoría.

Nombre del script: Generate_DataSafe_Audit_Collection_Scripts.sh.

Descripción: el script, Generate_DataSafe_Audit_Collection_Scripts.sh, automatiza el proceso de recopilación de datos de pista de auditoría para bases de datos de destino de Oracle Data Safe. Solicita al usuario un ID de compartimento y una hora de inicio de recopilación de pista de auditoría, recupera las pistas de auditoría con el estado NOT_STARTED y genera un único script de shell para iniciar la recopilación de pistas de auditoría para todas las bases de datos de destino.

Realice los pasos:

  1. Introducir ID de compartimento: solicita al usuario el ID de compartimento de OCI.

  2. Introducir hora de inicio: solicita la hora de inicio de recopilación de auditoría en formato YYYY-MM-DD.

  3. Recuperar pistas de auditoría: recupera pistas de auditoría con el estado NOT_STARTED de OCI.

  4. Generar CSV: extrae los datos de pista de auditoría relevantes en audit_trails.csv.

  5. Crear Script: Genera Data_safe_Target_DB_Audit_Collection_Start.sh con comandos para iniciar la recopilación de auditoría para todos los destinos.

Salida de script de ejemplo:

Seleccione Create Identity Domain

Tarea 9: Preparación de un inventario de Oracle Data Safe

Nombre del script: generate_data_safe_db_inventory.sh.

Descripción: este script de shell interactúa con OCI para recuperar y procesar la información de la base de datos de destino de Oracle Data Safe en función de sus tipos: AUTONOMOUS_DATABASE, DATABASE_CLOUD_SERVICE y INSTALLED_DATABASE. Genera archivos de salida con información detallada sobre cada tipo de base de datos.

Realice los pasos:

  1. ID de compartimento de entrada: solicite al usuario que introduzca el ID de compartimento donde se encuentran las bases de datos.

  2. Mostrar y filtrar bases de datos: muestre todas las bases de datos de destino de Oracle Data Safe en el compartimento especificado y filtrelas por tipo.

  3. Recuperar detalles de base de datos:

    • AUTONOMOUS_DATABASE: recupere detalles como el nombre mostrado, el ID de base de datos y el tipo de infraestructura.

    • DATABASE_CLOUD_SERVICE: recupere detalles como el ID del sistema de base de datos, el ID del cluster de VM (manejo de valores nulos) y el puerto del listener.

    • INSTALLED_DATABASE: recupere información, incluido el ID de instancia, las direcciones IP y el nombre del servicio.

  4. Generar archivos de salida: cree archivos independientes para cada tipo de base de datos con los detalles recopilados.

  5. Limpieza: elimine los archivos temporales y finalice la salida.

Salida de script de ejemplo:

Seleccione Create Identity Domain

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.