Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este artículo se describen las tareas predefinidas disponibles para los desarrolladores de Java para la modernización de GitHub Copilot.
Las tareas predefinidas capturan los procedimientos recomendados del sector para usar los servicios de Azure. Actualmente, la modernización de GitHub Copilot ofrece tareas predefinidas que abarcan escenarios comunes de migración. Estas tareas abordan los temas siguientes y mucho más:
- Administración de secretos
- Integración de cola de mensajes
- Monitoring
- Administración de identidades
Note
Esta lista crece en función de los comentarios de los clientes y de las necesidades en la nube en evolución.
Lista de tareas
La modernización de GitHub Copilot admite actualmente las siguientes tareas predefinidas:
RabbitMQ to Azure Service Bus
Estas tareas convierten aplicaciones Java que usan RabbitMQ —a través de Spring Advanced Message Queuing Protocol (AMQP), Spring Java Message Service (JMS) o Java EE / Jakarta EE sobre AMQP— para que utilicen en su lugar el servicio gestionado Azure Service Bus, manteniendo los patrones y la semántica de mensajería y habilitando la autenticación segura de forma predeterminada.
Identidades administradas para la migración de bases de datos a Azure
Las ofertas de Azure Database: Azure SQL Server, Azure Database for MySQL, Azure Database for PostgreSQL, Azure Cosmos DB para Cassandra API y Azure Cosmos DB para MongoDB admiten el inicio de sesión seguro mediante la identidad administrada. Al migrar una aplicación de una base de datos local a una base de datos en la nube administrada de Azure, esta tarea le ayuda a preparar el código base para la autenticación de identidad administrada en la base de datos.
Identidades administradas para la migración de credenciales en Azure
La autenticación mediante cadenas de conexión presenta vulnerabilidades de seguridad y sobrecarga de mantenimiento. Esta tarea transforma las aplicaciones Java para usar la autenticación de identidad administrada de Azure para servicios de mensajería como Azure Event Hubs y Azure Service Bus. Al integrar con bibliotecas cliente de Microsoft Identity, el código ya no necesita almacenar cadenas de conexión confidenciales ni firmas de acceso compartido en archivos de configuración.
Amazon Web Services (AWS) S3 a Azure Storage Blob
Al migrar el servicio de AWS a Azure, puede pasar de AWS S3 a Azure Storage Blob. Esta tarea le ayuda a convertir la lógica de código que interactúa con AWS S3 en lógica de código que funciona con Azure Storage Blob, al tiempo que mantiene la misma semántica.
Este conocimiento de migración se desarrolló en colaboración con el equipo de Azure Storage, basándose en su experiencia profunda en las API de Blob Storage, los patrones de autenticación y los comportamientos específicos de la plataforma para garantizar que la guía refleje los procedimientos recomendados de nivel de producción.
Registro en un archivo local
Los servicios de hospedaje de Azure se integran con Azure Monitor de forma predeterminada, recopilando la salida de registros en la consola y permite consultar y supervisar estos registros. Al mismo tiempo, no se recomienda iniciar sesión en archivos en un entorno de nube porque requiere rotación y transferencia de registros adicionales. Esta tarea le ayuda a convertir el registro basado en archivos de la aplicación en el registro basado en la consola, lo que hace que esté listo para la integración con Azure Monitor.
E/S de archivos local en monturas de recursos compartidos de archivos de Azure Storage
Los servicios de hospedaje de Azure ofrecen flexibilidad en el aprovisionamiento, el escalado, la conmutación por error, etc. Al mismo tiempo, el sistema de archivos de un tiempo de ejecución de aplicación determinado es transitorio. Si su aplicación lee o escribe en un archivo local, esta tarea le ayuda a identificar estos casos y convertirlos en un acceso unificado a la ruta de montaje. Al hacerlo, puede montar un Azure Storage File Share en la ruta de acceso especificada, lo que permite que su aplicación comparta y conserve datos en diferentes réplicas sin preocuparse por la reubicación de datos, la conmutación por error o problemas similares.
Correo de Java a Azure Communication Services
La migración de aplicaciones con dependencias del Protocolo simple de transferencia de correo (SMTP) puede ser difícil porque no todos los entornos de Azure admiten solicitudes salientes en el puerto 25. Esta tarea ayuda a convertir una aplicación que envía correo a través de SMTP para usar Azure Communication Services, que es totalmente compatible con los entornos de hospedaje de Azure.
Secretos y administración de certificados en Azure Key Vault
Esta tarea ayuda a migrar recursos de seguridad confidenciales a Azure Key Vault. Admite secretos codificados de forma rígida en el código base y en los certificados TLS/mTLS locales administrados en Almacenes de claves de Java. En el caso de los secretos, identifica textos secretos sospechosos y los convierte en lógica que recupera los datos de Azure Key Vault. En el caso de los certificados, realiza la transición de la aplicación de administrar certificados localmente al uso del proveedor java Cryptography Architecture (JCA) de Azure Key Vault, a la vez que mantiene la misma funcionalidad y posición de seguridad.
Operaciones de criptografía para Azure Key Vault
Java aplicaciones que realizan operaciones criptográficas administran localmente claves fuera de un servicio auditable centralizado. Esta tarea migra la lógica de criptografía local a Azure Key Vault para que las operaciones de firma, comprobación, cifrado y descifrado se ejecuten en claves que nunca abandonan el almacén, a la vez que se conserva el comportamiento existente de la aplicación.
Autenticación de usuario en Microsoft Entra ID
Las aplicaciones Java suelen usar soluciones de autenticación basadas en LDAP que no se migran fácilmente a Azure. Esta tarea le ayuda a realizar la transición del mecanismo de autenticación de usuario local a uno que use el identificador de Entra de Microsoft para la autenticación.
Productos de bases de datos para las ofertas de bases de datos de Azure
Java aplicaciones que se ejecutan en bases de datos locales , incluidas Oracle, IBM Db2, Informix y Sybase Adaptive Server Enterprise (ASE), se pueden migrar a Azure Database for PostgreSQL o Azure SQL Database para una experiencia en la nube totalmente administrada. Estas tareas actualizan la aplicación para que se conecte a la base de datos Azure de destino con autenticación sin contraseña Microsoft Entra ID y concilien la sintaxis SQL específica del origen, los tipos de datos y las funciones con el dialecto de destino, por lo que la aplicación mantiene el mismo comportamiento en Azure.
De AWS Secret Manager a Azure Key Vault
El cambio de AWS Secret Manager a Azure Key Vault requiere volver a configurar cómo la aplicación controla la información confidencial. Esta tarea transforma todos los aspectos de la administración de secretos en el código, desde la creación y recuperación hasta la actualización y eliminación, y usa las completas funcionalidades de seguridad y los modelos de autenticación de Azure Key Vault.
De ActiveMQ a Azure Service Bus
Las aplicaciones basadas en Apache ActiveMQ se pueden modernizar para usar el servicio de mensajería administrada de Azure. Esta tarea convierte los productores de mensajes ActiveMQ, los consumidores, las factorías de conexión y las interacciones de cola/tema en sus equivalentes de Azure Service Bus, implementando procedimientos recomendados para la confiabilidad y la autenticación en entornos en la nube.
De Amazon Web Services (AWS) Simple Queue Service (SQS) a Azure Service Bus
La transición de AWS SQS a Azure Service Bus implica volver a implementar las operaciones de cola y los patrones de control de mensajes. Esta tarea traduce construcciones de código específicas de SQS a sus homólogos de Azure Service Bus, conservando la semántica de mensajería crítica, como la entrega al menos una vez, el procesamiento por lotes de mensajes y los comportamientos de tiempo de espera de visibilidad al introducir las características de seguridad mejoradas de Azure.
Proyecto Ant/Eclipse en el proyecto de Maven
Los proyectos Java creados con Apache Ant o como proyectos del IDE Eclipse dependen de scripts imperativos o de metadatos específicos del IDE, lo que complica la gestión de dependencias y dificulta las compilaciones automatizadas y desatendidas. Estas tareas convierten el proyecto ant o Eclipse en un proyecto de Maven que se compila de forma coherente desde cualquier entorno, con dependencias resueltas a través de Maven y el diseño del proyecto alineado con las convenciones de Maven, al tiempo que mantiene el código fuente sin cambios.
Soluciones de caché para Azure Managed Redis
Las aplicaciones a menudo dependen de diversas soluciones de almacenamiento en caché —desde bibliotecas en memoria hasta sistemas distribuidos (como Infinispan, SwarmCache y Memcached)— que carecen de integración fluida con Azure y de escalabilidad o seguridad centralizadas. Esta tarea moderniza la capa de almacenamiento en caché mediante la migración de estas implementaciones a Azure Managed Redis (o la retirada del Azure Cache for Redis), lo que permite la escalabilidad nativa de la nube, la administración unificada y la seguridad mejorada con la autenticación de Microsoft Entra ID sin contraseña, a la vez que se conserva el comportamiento del almacenamiento en caché existente.
Consulte también
Inicio rápido: Creación y aplicación de sus propias aptitudes